Bulk upsert Target data

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.

Example payload for JSON upsert

{

"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"

}

Example payload for CSV upsert

{

"conflict_strategy": "reject",
"csv_url": "https://s3.amazonaws.com/movement-exports/members.csv?signed-id=xx123&expiry_at=xxx"

}

Data structure

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.

Conflict strategy

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.

Language
Credentials
Header
Click Try It! to start a request and see the response here!