Skip to main content
PUT
Replace Contact Data
Use this endpoint to store the complete state that another system should find the next time the caller contacts you. For example, Five9 can save a conversation ID, routing status, or handoff details against the caller’s phone number. The data is scoped to your organization and the phone number. If the number does not belong to a contact yet, Simple creates a contact so the stored state is visible in the dashboard. US numbers can be formatted or sent as digits. Non-US numbers must include the + country code. URL-encode the + when it appears in the path.
The response contains the normalized phone number, the stored object, its revision, and expiration metadata:
Data does not expire unless you provide ttlSeconds. When supplied, it must be an integer from 60 seconds through 90 days. The serialized data object may be at most 64 KiB. The endpoint returns 401 when authentication fails and 422 when the phone number or request body is invalid.

Authorizations

Authorization
string
header
required

Path Parameters

phoneNumber
string
required

The caller's phone number. US numbers may be formatted or sent as digits; non-US numbers must include the + country code.

Body

application/json
data
object
required

The JSON object to store. Its serialized UTF-8 size may not exceed 64 KiB.

ttlSeconds
integer

Optional expiration in seconds. Omit for no expiry; allowed values range from 60 seconds through 90 days.

Required range: 60 <= x <= 7776000

Response

Contact data replaced.

phoneNumber
string
required

The normalized phone number in E.164 format.

data
object
required

The stored JSON object.

revision
integer
required

The revision number of this value.

Required range: x >= 1
ttlSeconds
integer | null
required

Remaining TTL in seconds, or null when the record has no expiry.

expiresAt
string<date-time> | null
required

Expiration timestamp in UTC, or null when the record has no expiry.