Yes, it is possible to make a script that creates child records in Airtable in batches. You can use the Airtable API to extract records from the parent table and create multiple child records in a loop. Here is an example code snippet in JavaScript:
const AIRTABLE_API_KEY = 'YOUR_API_KEY';
const BASE_ID = 'YOUR_BASE_ID';
const PARENT_TABLE_NAME = 'Parent';
const CHILD_TABLE_NAME = 'Child';
const BATCH_SIZE = 10;
const Airtable = require('airtable');
const base = new Airtable({apiKey: AIRTABLE_API_KEY}).base(BASE_ID);
base(PARENT_TABLE_NAME).select({
view: 'YOUR_VIEW_NAME'
}).eachPage(async function(records, fetchNextPage) {
const childRecords = records.map(parentRecord => {
return {
"fields": {
"Name": "Child record",
"Parent": [parentRecord.getId()]
}
};
});
// Create child records in batches
for (let i = 0; i < childRecords.length; i += BATCH_SIZE) {
const batch = childRecords.slice(i, i + BATCH_SIZE);
await base(CHILD_TABLE_NAME).create(batch);
}
fetchNextPage();
}, function(err) {
if (err) {
console.error(err);
return;
}
});
This code fetches records from the parent table using a specific view, creates child records for each parent record, and creates them in batches of 10. You can customize the script to suit your specific requirements.
Asked: 2022-03-11 11:00:00 +0000
Seen: 10 times
Last updated: Mar 08 '22