Links

Update a Single Object

Partial Update on an Object

This function updates a single object of the given type and with the given ID. If no object with the specified object exists yet, an error is returned.
The ID must be a valid UUID, and must be lowercase. For example, 550e8400-e29b-41d4-a716-446655440000 is a valid UUID.
When updating objects using the JourneyApps API, use the UUIDs returned by JourneyApps (in the id field of each object) when you retrieve objects.
Relative URL
HTTP Request Method
/api/v4/backend-deployment-id/objects/model/object-id.json
PATCH
  • Replace model with the type of object that you wish to update (as defined in your app's Data Model).
  • Replace object-id with the ID of the specific object.

Parameters

The parameters must be specified in the same way as for creating new objects. Please refer to the same section in Creating a New Object and to the Field Representation section.
For updating more than one object in a request, refer to the Batch Operations section.

Response

The response includes the single updated object. The format of the object is the same as for Retrieving all Objects.

Example

BASE-URL
The below examples contain a BASE-URL placeholder. Please refer to the HTTP Endpoints section to get the base URL relevant to your deployment.
In this example, we update only the status field of a task object:
HTTP
curl
ruby
PATCH BASE-URL/api/v4/533bda53027894f69b001055/objects/tasks/198c990e-f1bf-11e1-8d7d-001cc01904e3.json
task[status]=1
The -X parameter to curl allows you to use a specific HTTP request method.
curl "BASE-URL/api/v4/533bda53027894f69b001055/objects/tasks/198c990e-f1bf-11e1-8d7d-001cc01904e3.json" \
-u "533bda53027894f69b001055:7Ajj5htRY1uzw7b4w23V" \
-X PATCH \
-d "task[status]=1"
require 'rest-client'
journey = RestClient::Resource.new "BASE-URL/api/v4", "533bda53027894f69b001055", "7Ajj5htRY1uzw7b4w23V"
journey["533bda53027894f69b001055/objects/tasks/198c990e-f1bf-11e1-8d7d-001cc01904e3.json"].patch :task=>{:status=>1}
Response:
json
{
"id": "198c990e-f1bf-11e1-8d7d-001cc01904e3",
"type": "task",
"updated_at": "2015-02-10T12:03:28Z",
"display": "Task 1",
"name": "Task 1",
"instructions": null,
"status": {
"key": 1,
"display": "Closed"
},
"category_id": null
}

Replacing an Object in its Entirety

This function replaces a single object of the given type with the given ID. If no object with the specified ID exists yet, a new object is created with the given ID.
The ID must be a valid UUID, and must be lowercase. For example, 550e8400-e29b-41d4-a716-446655440000 is a valid UUID.
When updating objects using the JourneyApps API, use the UUIDs returned by JourneyApps (in the id field of each object) when you retrieve objects.
Relative URL
HTTP Request Method
/api/v4/backend-deployment-id/objects/model/object-id.json
PUT
  • Replace model with the type of object that you wish to update (as defined in your app's Data Model).
  • Replace object-id with the ID of the specific object.

Parameters

The parameters must be specified in the same way as for creating new objects. Please refer to the same section in Creating a New Object and to the Field Representation section.
For updating more than one object in a request, refer to the Batch Operations section.

Response

The response includes the single updated object. The format of the object is the same as for Retrieving all Objects.

Example

BASE-URL
The below examples contain a BASE-URL placeholder. Please refer to the HTTP Endpoints section to get the base URL relevant to your deployment.
In this example, we set only the name field of a task object. The other fields are cleared.
HTTP
curl
ruby
PUT BASE-URL/api/v4/533bda53027894f69b001055/objects/tasks/198c990e-f1bf-11e1-8d7d-001cc01904e3.json
task[name]=Task%201
The -X parameter to curl allows you to use a specific HTTP request method.js
curl "BASE-URL/api/v4/533bda53027894f69b001055/objects/tasks/198c990e-f1bf-11e1-8d7d-001cc01904e3.json" \
-u "533bda53027894f69b001055:7Ajj5htRY1uzw7b4w23V" \
-X PUT \
-d "task[name]=Task%201"
require 'rest-client'
journey = RestClient::Resource.new "BASE-URL/api/v4", "533bda53027894f69b001055", "7Ajj5htRY1uzw7b4w23V"
journey["533bda53027894f69b001055/objects/tasks/198c990e-f1bf-11e1-8d7d-001cc01904e3.json"].put :task=>{:name=>"Task 1"}
Response:
json
{
"id": "198c990e-f1bf-11e1-8d7d-001cc01904e3",
"type": "task",
"updated_at": "2015-02-10T12:01:25Z",
"display": "Task 1",
"name": "Task 1",
"instructions": null,
"status": null,
"category_id": null
}