Skip to main content

Update user subscription topic

Update or Create user preferences for a specific subscription topic

URL: https://api.courier.com/users/:user_id/preferences/:topic_id

Method: PUT

Path Parameters

user_idstringrequired
A unique identifier associated with the user whose preferences you wish to update.
topic_idstringrequired
A unique identifier associated with a subscription topic.

Body Parameters

statusstringrequired
The preference status the user has set for a subscription topic.
has_custom_routingboolean
Whether or not a user has set a channel preference for subscription topic. If false, custom_routing is ignored and the topic preference is used.
custom_routingarray
The Channels a user has chosen to receive notifications through for this topic

Responses

status: 200 OK

messagestring

status: 400 Bad Request

messagestring
A message describing the error that occurred.
typestring
[invalid_request_error] The type of error that occurred.

Request Example

curl --request PUT \
--url https://api.courier.com/users/example_user_id/preferences/FW0YU64P4TMYKMMHH67D6FENX8VS \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '
{
"topic": {
"status": "OPTED_OUT"
}
}
'

Responses Example

{
"message": "success"
}
{
"message": "Error Message",
"type": "invalid_request_error"
}

Method: PUT

URL: https://api.courier.com/users/example_user_id/preferences/FW0YU64P4TMYKMMHH67D6FENX8VS

JSON
// Sample User Preference Input
{
"topic": { "status": "OPTED_OUT", "has_custom_routing": true, "custom_routing": ["sms", "push"] }
}
Was this helpful?