Start or resume a list migration (Preview)
Preview · Available to selected organizations. The complete encoded JSON request, including new-start metadata, must not exceed 3000000 bytes.
The complete encoded JSON request, including new-start metadata, must not exceed 3000000 bytes. Admits a durable import using the preview hash and an idempotency key, or resumes the same persisted input at its committed cursor. Imports never restore an existing unsubscribe, suppression or bounce. Namespace-scoped credentials cannot create organization-wide suppressions; those rows are conflicts and create no contact. New active contacts are billable and normal contact events apply. Requires listMigration for new admissions.
Authorization
apiKey In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Value in
- "new"
1 <= length <= 255Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/contacts/imports" \ -H "Content-Type: application/json" \ -d '{ "mode": "new", "input": { "preset": "beehiiv", "topicId": "string", "files": [ { "name": "string", "csv": "string", "evidence": { "kind": "status_column" } } ] }, "planHash": "string", "idempotencyKey": "string" }'{ "id": "string", "namespaceId": "string", "topicId": "string", "preset": "beehiiv", "status": "queued", "generation": 0, "counts": { "totalRows": 0, "uniqueAddresses": 0, "subscribed": 0, "unsubscribed": 0, "suppressed": 0, "skipped": 0, "conflicts": 0, "created": 0, "existing": 0 }, "processedRows": 0, "totalRows": 0, "createdAt": "string", "startedAt": "string", "updatedAt": "string", "completedAt": "string", "failure": { "code": "string", "message": "string", "retryable": true }, "resumable": true}