curl --request POST \
--url https://api.tryfuse.ai/api/v1/business/scheduled-sends/decline \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"sendIds": [
"<string>"
]
}
'import requests
url = "https://api.tryfuse.ai/api/v1/business/scheduled-sends/decline"
payload = { "sendIds": ["<string>"] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({sendIds: ['<string>']})
};
fetch('https://api.tryfuse.ai/api/v1/business/scheduled-sends/decline', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"declined": [
"6a8dce70a4566f4f2454bd4f"
],
"ignored": [
"6a8da7adafc401ca94530e14"
],
"notFound": [
"000000000000000000000001"
]
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}Decline queued sends awaiting review
Declines queued sends. A declined row moves to stopped, which is TERMINAL for that contact: unlike skip, the sequence does not advance, so no further step is scheduled for the contact in this campaign. Decline reaches both AI drafts awaiting review (approval_required) and ordinary queued rows (scheduled), so it is also how you call off an upcoming send for one contact. Only sends belonging to campaigns you own can be declined. The answer reports every id you passed: declined are the ones that moved, ignored are your sends in a state decline cannot move (already sent, skipped, stopped or overwritten), and notFound are ids that do not exist, are not yours, or belong to a deleted campaign. Rate limit: 30 requests/minute and 1,000/day per token owner, shared by every campaign, scheduled-send, campaign-template and knowledge-hub endpoint.
Errors:
422VALIDATION_FAILED— sendIds is missing, empty, longer than 100, contains a duplicate, or an entry is not a 24-character hex id;paramnames the field.429RATE_LIMITED— More than 30 campaign requests in a minute, or 1,000 in a day, for this token owner (the bucket is shared by every /business/campaigns, /business/scheduled-sends, /business/campaign-templates and /business/knowledge-hubs call).500UNEXPECTED_ERROR— An unhandled failure; the detail stays in our logs and is never returned.
Requires one of the following token scopes: campaigns.
curl --request POST \
--url https://api.tryfuse.ai/api/v1/business/scheduled-sends/decline \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"sendIds": [
"<string>"
]
}
'import requests
url = "https://api.tryfuse.ai/api/v1/business/scheduled-sends/decline"
payload = { "sendIds": ["<string>"] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({sendIds: ['<string>']})
};
fetch('https://api.tryfuse.ai/api/v1/business/scheduled-sends/decline', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"declined": [
"6a8dce70a4566f4f2454bd4f"
],
"ignored": [
"6a8da7adafc401ca94530e14"
],
"notFound": [
"000000000000000000000001"
]
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"param": "<string>",
"doc_url": "<string>",
"request_id": "<string>"
}
}Authorizations
Your API token (af_…) as the Basic-auth username, with an empty password.
Body
1-100 unique queued-send ids. Approve moves rows in approval_required to scheduled; decline moves rows in approval_required or scheduled to stopped, which also halts that contact's sequence. Ids you do not own are reported under notFound; ids in a state the decision cannot move are reported under ignored.
1 - 100 elementsA queued send id (24-character hex ObjectId).