Supported HTTP Methods

The Tulip Bulk API service makes use of standard HTTP methods: GET, POST and PUT.

  • For bulk create operations, use the HTTP POST method.
  • For bulk update operations, use the HTTP PUT method.

The routes are the same for both, and target data records are identified by IDs supplied in the payload, not as a querystring parameter in the URL.

Most PUT endpoints operate in a manner known in data migration as kill-and-fill — you either specify values for the entire backend record — or they are destroyed or reset to their defaults. See Bulk API Request Format and Handling Resource Dependencies for details.

Note: The Bulk API service does not support the PATCH and DELETE HTTP methods.

Important: ALL attributes must be sent when updating records using the PUT method, not just the attributes that are being updated.

In other words, if there are 10 attributes in a record that a client normally sends to Tulip via the POST (Creation) request, it is imperative that subsequent updates to the record contain the FULL RECORDS and hence all 10 attributes even if only one was actually updated on the client’s source system. Tulip internally always clears the record during PUT requests and replaces the contents of the existing record with the incoming UPDATE record.