const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
mailing_list_id: 1,
name: 'Tobias Example',
company: 'www.thanks.io',
address: '123 Main Street',
address2: 'Apartment 1',
city: 'Any Town',
province: 'KS',
postal_code: '12345',
country: 'US',
dob: '1981-04-23',
anniversary: '2025-07-21',
email: 'tobias@example.com',
phone: '+1 (555) 123-4567',
custom1: 'Unique Info',
custom2: 'For example a product code or customer ID',
custom3: 'Any Extra Info',
custom4: 'Any Extra Info'
})
};
fetch('https://api.thanks.io/api/v2/recipients/{recipientId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request PUT \
--url https://api.thanks.io/api/v2/recipients/{recipientId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"mailing_list_id": 1,
"name": "Tobias Example",
"company": "www.thanks.io",
"address": "123 Main Street",
"address2": "Apartment 1",
"city": "Any Town",
"province": "KS",
"postal_code": "12345",
"country": "US",
"dob": "1981-04-23",
"anniversary": "2025-07-21",
"email": "tobias@example.com",
"phone": "+1 (555) 123-4567",
"custom1": "Unique Info",
"custom2": "For example a product code or customer ID",
"custom3": "Any Extra Info",
"custom4": "Any Extra Info"
}
'import requests
url = "https://api.thanks.io/api/v2/recipients/{recipientId}"
payload = {
"mailing_list_id": 1,
"name": "Tobias Example",
"company": "www.thanks.io",
"address": "123 Main Street",
"address2": "Apartment 1",
"city": "Any Town",
"province": "KS",
"postal_code": "12345",
"country": "US",
"dob": "1981-04-23",
"anniversary": "2025-07-21",
"email": "tobias@example.com",
"phone": "+1 (555) 123-4567",
"custom1": "Unique Info",
"custom2": "For example a product code or customer ID",
"custom3": "Any Extra Info",
"custom4": "Any Extra Info"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text){
"id": 18113288,
"mailing_list_id": 1,
"name": "Tobias Example",
"company": "thanks.io",
"address": "12345 Main Street",
"address2": "Apartment 1",
"city": "Any Town",
"province": "NY",
"postal_code": "12345",
"country": "US",
"dob": "1981-04-23",
"anniversary": "2025-07-21",
"email": "tobias@example.com",
"phone": "845-988-6485",
"custom1": "Unique Info",
"custom2": "For example a product code or customer ID",
"custom3": "",
"custom4": "",
"created_at": "2025-06-27T14:57:11.000000Z",
"updated_at": "2025-06-27T14:57:11.000000Z",
"mailing_list": {
"id": 1,
"user_id": 2,
"sub_account_id": null,
"type": "manual",
"description": "Sphere Contacts Mailing List",
"qrcode_url": null,
"total_recipients": 1,
"processed": true,
"is_suppression_list": false,
"total_scans": 1,
"unique_scans": 1,
"last_scan": "2025-07-13T13:57:11.000000Z",
"total_sends": 2,
"last_send": "2025-07-06T13:57:11.000000Z",
"created_at": "6 years ago",
"updated_at": "2025-06-27T14:57:11.000000Z"
}
}{
"message": "Mailing List Does Not Exist"
}{
"message": "Unauthorized"
}{
"message": "Not Found"
}Update Recipient
Update details of a specific recipient by ID.
const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
mailing_list_id: 1,
name: 'Tobias Example',
company: 'www.thanks.io',
address: '123 Main Street',
address2: 'Apartment 1',
city: 'Any Town',
province: 'KS',
postal_code: '12345',
country: 'US',
dob: '1981-04-23',
anniversary: '2025-07-21',
email: 'tobias@example.com',
phone: '+1 (555) 123-4567',
custom1: 'Unique Info',
custom2: 'For example a product code or customer ID',
custom3: 'Any Extra Info',
custom4: 'Any Extra Info'
})
};
fetch('https://api.thanks.io/api/v2/recipients/{recipientId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request PUT \
--url https://api.thanks.io/api/v2/recipients/{recipientId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"mailing_list_id": 1,
"name": "Tobias Example",
"company": "www.thanks.io",
"address": "123 Main Street",
"address2": "Apartment 1",
"city": "Any Town",
"province": "KS",
"postal_code": "12345",
"country": "US",
"dob": "1981-04-23",
"anniversary": "2025-07-21",
"email": "tobias@example.com",
"phone": "+1 (555) 123-4567",
"custom1": "Unique Info",
"custom2": "For example a product code or customer ID",
"custom3": "Any Extra Info",
"custom4": "Any Extra Info"
}
'import requests
url = "https://api.thanks.io/api/v2/recipients/{recipientId}"
payload = {
"mailing_list_id": 1,
"name": "Tobias Example",
"company": "www.thanks.io",
"address": "123 Main Street",
"address2": "Apartment 1",
"city": "Any Town",
"province": "KS",
"postal_code": "12345",
"country": "US",
"dob": "1981-04-23",
"anniversary": "2025-07-21",
"email": "tobias@example.com",
"phone": "+1 (555) 123-4567",
"custom1": "Unique Info",
"custom2": "For example a product code or customer ID",
"custom3": "Any Extra Info",
"custom4": "Any Extra Info"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text){
"id": 18113288,
"mailing_list_id": 1,
"name": "Tobias Example",
"company": "thanks.io",
"address": "12345 Main Street",
"address2": "Apartment 1",
"city": "Any Town",
"province": "NY",
"postal_code": "12345",
"country": "US",
"dob": "1981-04-23",
"anniversary": "2025-07-21",
"email": "tobias@example.com",
"phone": "845-988-6485",
"custom1": "Unique Info",
"custom2": "For example a product code or customer ID",
"custom3": "",
"custom4": "",
"created_at": "2025-06-27T14:57:11.000000Z",
"updated_at": "2025-06-27T14:57:11.000000Z",
"mailing_list": {
"id": 1,
"user_id": 2,
"sub_account_id": null,
"type": "manual",
"description": "Sphere Contacts Mailing List",
"qrcode_url": null,
"total_recipients": 1,
"processed": true,
"is_suppression_list": false,
"total_scans": 1,
"unique_scans": 1,
"last_scan": "2025-07-13T13:57:11.000000Z",
"total_sends": 2,
"last_send": "2025-07-06T13:57:11.000000Z",
"created_at": "6 years ago",
"updated_at": "2025-06-27T14:57:11.000000Z"
}
}{
"message": "Mailing List Does Not Exist"
}{
"message": "Unauthorized"
}{
"message": "Not Found"
}Authorizations
Bearer token authentication using your thanks.io API key
Path Parameters
Recipient ID
296446
Body
1
"Tobias Example"
"www.thanks.io"
"123 Main Street"
"Apartment 1"
"Any Town"
State or Province
"KS"
"12345"
"US"
Date of Birth in ISO 8601 format (YYYY-MM-DD) or null if not set. If provided as MM/DD/YYYY in requests, it will be converted to ISO 8601 format.
"1981-04-23"
Can be used for house purchase anniversaries, move-in dates, or any recurring annual milestone. Anniversary date in ISO 8601 format (YYYY-MM-DD) or null if not set. If provided as MM/DD/YYYY in requests, it will be converted to ISO 8601 format.
"2025-07-21"
"tobias@example.com"
"+1 (555) 123-4567"
Custom field for additional information about the recipient
"Unique Info"
Custom field for additional information about the recipient
"For example a product code or customer ID"
Custom field for additional information about the recipient
"Any Extra Info"
Custom field for additional information about the recipient
"Any Extra Info"
Response
Successful Response
18113288
1
"Tobias Example"
"www.thanks.io"
"123 Main Street"
"Apartment 1"
"Any Town"
State or Province
"KS"
"12345"
"US"
Date of Birth in ISO 8601 format (YYYY-MM-DD) or null if not set. If provided as MM/DD/YYYY in requests, it will be converted to ISO 8601 format.
"1981-04-23"
Can be used for house purchase anniversaries, move-in dates, or any recurring annual milestone. Anniversary date in ISO 8601 format (YYYY-MM-DD) or null if not set. If provided as MM/DD/YYYY in requests, it will be converted to ISO 8601 format.
"2025-07-21"
"tobias@example.com"
"+1 (555) 123-4567"
Custom field for additional information about the recipient
"Unique Info"
Custom field for additional information about the recipient
"For example a product code or customer ID"
Custom field for additional information about the recipient
"Any Extra Info"
Custom field for additional information about the recipient
"Any Extra Info"
The mailing list this recipient belongs to
Show child attributes
Show child attributes
"2025-06-27T14:57:11.000000Z"
"2025-06-27T14:57:11.000000Z"
Was this page helpful?