Error
A valid request URL is required to generate request examples{
"success": true,
"data": {
"imported": 2
}
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}Outbound
Bulk-import attested PEWC consent
Bulk-import existing ATTESTED consent (every row is imported_attested). Accepts a JSON body {records:[...]} or a multipart CSV (field 'file', header row with at least phone and disclosure_text columns). The import is ATOMIC and A3-validated: if ANY row has an invalid phone or a disclosure that does not authorize an artificial/prerecorded voice + autodialer, the WHOLE batch is rejected (422 with a per-row error) and NOTHING is written — defective consent can never be minted, even partially. Use this to load many attested rows atomically. To append a single web-form or attested proof, use `recordOutboundConsent` (POST /outbound/consent-records) instead.
POST
/
outbound
/
consent-records
/
import
Error
A valid request URL is required to generate request examples{
"success": true,
"data": {
"imported": 2
}
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}{
"type": "about:blank",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"code": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>"
}
]
}Authorizations
Flowyte secret API key (Authorization: Bearer flowyte_sk_live_…). Scope-gated; is scoped to your organization — a key can never reach another tenant. The listed scopes in each operation's apiKey requirement are the scopes that key must hold. The tokenUrl is nominal: keys are minted in the dashboard.
FlowClient Credentials
- Token URL
- /api/v1/api-keys
Scopes1
outbound:write
Create/import contact lists, create/launch/pause/resume/cancel outbound campaigns, and enqueue single outbound calls.
Body
application/jsonmultipart/form-data
Show child attributes
Show child attributes