The Scenario
Your data-engineering team maintains what they call a "schema registry" — an Excel workbook with 20 rows, each defining a Kadoa extraction schema: name, entity type, field names, field types, and example values. Three rows are new this sprint (column F says "NEW"). Two rows were marked "DELETE" by the product manager who deprecated those data sources last week. The rest are unchanged.
You've done this before. The last time the registry changed, someone spent a full afternoon making the API calls by hand — create the new ones, delete the old ones, write the IDs back to the workbook, update the status column. It's not complicated work. It's just relentlessly manual for something that's entirely data-driven.
The new rows have been sitting in the workbook since Monday. Today is Thursday.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Excel workbook. It reads your schema registry and makes the corresponding Kadoa API calls — creates, updates, deletes — then writes the results back into the same rows.
The prompt for creating new schemas:
Read the schema registry in this workbook: for each row where column F is 'NEW', create a Kadoa schema using the name in column A, entity in column B, and the field definitions in columns C through E; write the returned schema ID back to column G.
What You Get
- One Kadoa schema created per "NEW" row, with the name, entity type, and field structure from your registry.
- The returned schema ID written back to column G, so the registry stays the authoritative reference.
- Column F updated from "NEW" to "CREATED" after successful creation, so the status is accurate without a manual update.
- Any rows that fail flagged in column H with the API error, so you know which schemas need attention before the next workflow run depends on them.
What If the Data Is Not Quite Ready
You need to handle deletes in the same pass
The "DELETE" rows also need to be processed — delete the schema from Kadoa and clear the row:
For each row in this workbook where column F is 'DELETE', delete the corresponding Kadoa schema whose ID is in column G, then clear that row's data and mark column H as 'Deleted'.
Some field definitions need type coercion before creation
Your column C has field names and column D has types, but some types are written inconsistently ("Integer", "int", "number") and Kadoa expects a specific format:
For each row where column F is 'NEW', normalize the type values in column D to Kadoa's accepted formats ('string', 'number', 'boolean', 'array') before creating the schema. Write the schema ID to column G and the normalized type list to column E.
You want to validate that existing schemas still match the registry
Some schemas were created months ago. You want to check whether Kadoa's stored version still matches what your registry says it should be:
For each row in this workbook where column G has a schema ID and column F is 'ACTIVE', fetch the schema from Kadoa and compare its field definitions to columns C and D. Write 'MATCH' or 'DRIFT' to column H, and for any 'DRIFT' rows, write the differing fields to column I.
Full pipeline: sync the registry in one shot — create new, delete removed, flag drift on existing
Process the full schema registry in this workbook: for rows where column F is 'NEW', create the Kadoa schema and write the ID to column G; for rows where column F is 'DELETE', delete the schema and mark the row 'Deleted'; for rows where column F is 'ACTIVE' and column G has a schema ID, fetch the schema from Kadoa and compare it to the registry — write 'MATCH' or 'DRIFT' to column H. Update column F to reflect the new status for every row processed.
One prompt syncs the entire registry — creates, deletes, and drift detection in a single pass.
Try It
Get the 7-day free trial of SheetXAI and open your Kadoa schema registry workbook, then ask it to sync all the pending changes — creates, deletes, and status updates — without a single manual API call. For related reading, see how to pull extracted records into an Excel workbook or the Kadoa overview.
