Skip to main content

Replace a profile

When using PUT, be sure to include all the key-value pairs required by the recipient's profile. Any key-value pairs that exist in the profile but fail to be included in the PUT request will be removed from the profile. Remember, a PUT update is a full replacement of the data. For partial updates, use the PATCH /profiles/{recipient_id} request.

More Examples

The following types of requests will clear out the properties of the Profile:

JSON
// Empty Profile Object
{
"profile": {}
}

The above will result with:

200
{
"status": "SUCCESS"
}

The Profile will now be:

JSON
{
"profile: {}
}
PUThttps://api.courier.com/profiles/:recipient_id
Replace an existing profile with the supplied values or create a new profile if one does not already exist.
PATH PARAMS
recipient_idstringrequired
A unique identifier representing the recipient associated with the requested profile.
BODY PARAM
profileobject
An object that includes any key-value pairs required by your chosen Integrations.
addressobject
formattedstring
street_addressstring
localitystring
regionstring
postal_codestring
countrystring
birthdatestring
emailstring
email_verifiedboolean
family_namestring
genderstring
given_namestring
localestring
middle_namestring
namestring
nicknamestring
phone_numberstring
phone_number_verifiedboolean
picturestring
preferred_namestring
profilestring
substring
updated_atstring
websitestring
zoneinfostring
customjson
A free form object. Due to a limitation of the API Explorer, you can only enter string key/values below, but this API accepts more complex object structures.
airshipobject
audienceobject
named_userstring
device_typesarray
apnstring
target_arnstring
discordoneOf
channel_idstring
expooneOf
tokenstring
facebookPSIDstring
firebaseTokenstring
intercomobject
fromstring
toobject
idstring
ms_teamsoneOf
user_idstring
tenant_idstring
service_urlstring
oneSignalPlayerIDstring
slackoneOf
access_tokenstring
channelstring
webhookobject
urlstring
methodstring
headersjson
authenticationobject
modestring
usernamestring
passwordstring
tokenstring
profilestring
Responses
AUTH TOKEN
curl --request PUT \
--url https://api.courier.com/profiles/0460766e-8463-4905-ae98-b72c7aef41d6 \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '
{
"profile": {
"email": "user@example.com",
"phone_number": "555-555-5555"
}
}
'
Response Example
{
"status": "SUCCESS"
}

Example

Method: PUT

URL: https://api.courier.com/profiles/abcdefgh12345678

Body: ​

{
"profile": {
"email": "user@example.com",
"phone_number": "555-555-5555",
"name": "John Smith"
}
}