Upsert an object (server token only)
PUT
/v1/objects/{type}/{id}
const url = 'http://localhost:3000/v1/objects/example/example';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"custom":{}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url http://localhost:3000/v1/objects/example/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "custom": {} }'Replaces custom wholesale. Creates the object if absent.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”type
required
string
id
required
string
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
custom
required
object
key
additional properties
any
Examplegenerated
{ "custom": {}}Responses
Section titled “Responses”The upserted object
Media typeapplication/json
Tenant-owned mutable data that activities point at. Opaque to dropin — we
store, update, and return custom, and never interpret it. Writes are
server-token only.
object
type
required
string
id
required
string
custom
required
object
key
additional properties
any
updated_at
required
string format: date-time
Example
{ "type": "session", "id": "1234"}Authenticated but not permitted.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
requestId
required
string
fields
Present only for VALIDATION_FAILED.
Array<object>
object
path
string
message
string
Example
{ "error": { "code": "VALIDATION_FAILED" }}