Invite one exact advertiser recipient
curl --request POST \
--url https://api.interchange.io/api/v2/organization/advertisers/{advertiserId}/self-service-invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"recipientEmail": "jsmith@example.com",
"operatorDomain": "<string>",
"expectedEligibilityRevision": "<string>",
"idempotencyKey": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.interchange.io/api/v2/organization/advertisers/{advertiserId}/self-service-invitations"
payload = {
"recipientEmail": "jsmith@example.com",
"operatorDomain": "<string>",
"expectedEligibilityRevision": "<string>",
"idempotencyKey": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
recipientEmail: 'jsmith@example.com',
operatorDomain: '<string>',
expectedEligibilityRevision: '<string>',
idempotencyKey: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.interchange.io/api/v2/organization/advertisers/{advertiserId}/self-service-invitations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"admissionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"advertiserId": "<string>",
"admissionState": "pending",
"claimState": "unclaimed",
"deliveryState": "requested",
"recipientEmail": "jsmith@example.com",
"revision": "<string>",
"requestedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"expiresAt": "2023-11-07T05:31:56Z",
"replay": true
},
"error": null
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}Advertisers
Invite one exact advertiser recipient
Send a one-time exact-recipient invitation from an eligible Advertiser row. Delivery, claim, and Seller admission remain separate audited states; the claim bearer is delivered only by email and is never returned.
POST
/
organization
/
advertisers
/
{advertiserId}
/
self-service-invitations
Invite one exact advertiser recipient
curl --request POST \
--url https://api.interchange.io/api/v2/organization/advertisers/{advertiserId}/self-service-invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"recipientEmail": "jsmith@example.com",
"operatorDomain": "<string>",
"expectedEligibilityRevision": "<string>",
"idempotencyKey": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.interchange.io/api/v2/organization/advertisers/{advertiserId}/self-service-invitations"
payload = {
"recipientEmail": "jsmith@example.com",
"operatorDomain": "<string>",
"expectedEligibilityRevision": "<string>",
"idempotencyKey": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
recipientEmail: 'jsmith@example.com',
operatorDomain: '<string>',
expectedEligibilityRevision: '<string>',
idempotencyKey: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.interchange.io/api/v2/organization/advertisers/{advertiserId}/self-service-invitations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"admissionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"advertiserId": "<string>",
"admissionState": "pending",
"claimState": "unclaimed",
"deliveryState": "requested",
"recipientEmail": "jsmith@example.com",
"revision": "<string>",
"requestedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"expiresAt": "2023-11-07T05:31:56Z",
"replay": true
},
"error": null
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}Authorizations
API key or access token
Path Parameters
Pattern:
^\d+$Body
application/json
Maximum string length:
320Pattern:
^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$Maximum string length:
253Pattern:
^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+$Available options:
advertiser-viewer, advertiser-editor, advertiser-admin Pattern:
^[0-9a-f]{64}$Pattern:
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$