Target data is merged asynchronously, over the course of several minutes after a payload is successfully submitted. The API call returns immediately, and a deferred result ID is returned. See the documentation for the deferred result endpoint for more information on how to retrieve the result.
Data should be sent in a JSON payload, as the request body. You can upload a maximum of 1000 targets per request with a JSON payload.
{
"records": [
{
"external_id": "MemNo12345",
"first_name": "FirstName",
"last_name": "LastName",
"email": "[email protected]",
"phone_number": "+441234567890",
"custom_field_slug": "Custom field data"
},
{
"external_id": "MemNo12346",
"first_name": "FirstName",
"last_name": "LastName",
"email": "[email protected]",
"phone_number": "+441234567890",
"custom_field_slug": "Custom field data"
}
],
"conflict_strategy": "reject"
}
{
"conflict_strategy": "reject", "csv_url": "https://s3.amazonaws.com/movement-exports/members.csv?signed-id=xx123&expiry_at=xxx"
}
Each target in the array must be identified by an ‘external_id’. Any number of attributes may then be upserted, including:
-
first_name
-
last_name
-
phone_number
-
email
As well as any custom fields, identified by their slug. Please see the ‘Uploading data’ guide for more details.
By default Movement will reject new records which collide with other records, where they are matched by an email or phone number. You can specify ‘ignore’ if you’d like to import these records.
