Skip to main content
This page is your quick-lookup dictionary for every field you will encounter when working with the Scalysis API. Use the Request Fields table to know exactly what to send in your JSON body, and the Response Fields table to understand what comes back. Each entry notes the field’s data type, whether it is required or optional, and what it actually does.

Request Fields

These are the fields you can include in the JSON body of your API requests. Fields marked Required will produce a 400 error if omitted; fields marked Optional have sensible defaults or are only needed for specific script configurations.
For campaign requests, you must supply either contacts[] or csvText — not both, and not neither. If you use csvText, make sure the column name for phone numbers matches your phoneColumn value (or the default "phone_number").
scriptId is required on every call trigger and campaign creation request. There is no account-level default script — you must always specify which AI agent script to use.

contacts[] object shape

Each object inside the contacts[] array should follow this structure:
Only phone_number (or whichever column phoneColumn points to) is strictly required per contact. All other fields are optional and will be passed through to the script as context.

csvText format example

If you prefer to upload contacts as CSV, paste the entire CSV content as a single string value:

Response Fields

These fields appear in the JSON body of responses returned by the Scalysis API. Not every field appears in every response — the table notes which endpoint context each field is associated with.

transcript array object shape

Each element of the transcript array follows this structure:
Use the transcript array together with callOutcome and summary to build a complete post-call audit log. The summary gives you a quick snapshot, callOutcome lets you filter and segment calls, and transcript provides the full detail if you ever need to review exactly what was said.
callDurationSec and totalCallCost are only populated once the call has fully completed. If you retrieve the outcome while the call is still running, you will receive a 404 Call is still in progress response — wait 10–30 seconds and try again.