Headless CRM / Revenue Operator / Skills
Export Records
- name
- export-records
- description
- Use when records must leave the workspace — pushing to an external CRM, firing a webhook, syncing to another system, or producing a file or report for someone outside the team.
Principle
The workspace is the source of truth and exports are one-way. Nothing outside writes back, and every push is logged so it can be repeated safely.
Before sending
- Read the Exports table for this target. If a row exists with the same record_ref and payload_hash and status sent, the push already happened — stop and say so.
- Resolve the exact record set and show the user the count, the target, and a sample. Confirm before the first send of a session.
- Check list_env_vars for the credentials the target needs. Never put a secret in a file, a table, or your reply.
Sending
- Write the Exports row with status pending first, then send, then update it to sent or failed with a short response_summary. A push with no log row is a push you cannot repeat safely.
- Record the remote id into the record's external_ref on success. That field is what makes the next export an update instead of a duplicate.
- On failure, stop the batch. Do not retry a whole run because one record failed; report which one and why.
Do not
- Do not export records a human has not seen in some form.
- Do not include Activities bodies in an outbound payload unless asked; call notes routinely contain things nobody meant to send outside.