Set Contact > Email opt_out. via API (postman) or .csv Import

Hello all,

I am looking at how I can update Contact Records > Email Address > "Opt_Out" 

 - But via csv. (for either import or using Postman > Runner)

Found this old post but has a missing image - the crucial part of the solution Nerd



For info, we send some campaigns not from Sugar, and if folk opt out of those other campaigns i wish to opt them out from their contact record > email address in back in Sugar.

But, I am stuck on what that will look like.
I do a ton of updates and things using Postman, api.  And also use postman's runner often.  Hoping to do that.

tried this initial attempt:

PUT {{url}}Contacts/MassUpdate

Fullscreen
1
2
3
4
5
6
7
8
9
{ "massupdate_params":
{ "uid":
[ "003d000001lVSEtAAO"
],
"email_opt_out": false
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX



If I GET my own contact record in postman I see this within:

Fullscreen
1
2
3
4
5
6
7
8
9
"email": [
{
"email_address": " --my-email-address--",
"invalid_email": false,
"opt_out": false,
"email_address_id": "0kQoprP4FqQdpKThqWhtZKHZYDo4DT",
"primary_address": true,
"reply_to_address": false
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Do I need to use something like:  <module>/:record/link/
Do I need the ID of the email?

Then this does work...   but I will not (not at first) know the email ID for each record:

PUT {{url}}Contacts/MassUpdate

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{ "massupdate_params":
{ "uid":
[ "003d000001lVSEtAAO"
],
"email": [
{
"email_address": "--my-email-address--",
"invalid_email": false,
"opt_out": true,
"email_address_id": "0kQoprP4FqQdpKThqWhtZKHZYDo4DT",
"primary_address": true,
"reply_to_address": false
}
]
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


Thank you in advance for any tips.  I may be on the wrong track completely!
No rush.
Just stuck.

Parents Reply Children