Resend Invite
const options = {
method: 'POST',
headers: {'x-api-key': '<x-api-key>', 'x-organization-id': '<x-organization-id>'}
};
fetch('https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{campaign_assignment_id}/resend', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{campaign_assignment_id}/resend"
headers = {
"x-api-key": "<x-api-key>",
"x-organization-id": "<x-organization-id>"
}
response = requests.post(url, headers=headers)
print(response.text)curl --request POST \
--url https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{campaign_assignment_id}/resend \
--header 'x-api-key: <x-api-key>' \
--header 'x-organization-id: <x-organization-id>'{
"id": "<string>",
"campaign_id": "<string>",
"last_invited_at": "<string>",
"status": "<string>",
"assignment": {}
}Resend Invite
Re-send the invite email to a specific campaign recipient
POST
/
v1
/
custom-kpi-datasets
/
{dataset_id}
/
campaigns
/
{campaign_id}
/
assignments
/
{campaign_assignment_id}
/
resend
Resend Invite
const options = {
method: 'POST',
headers: {'x-api-key': '<x-api-key>', 'x-organization-id': '<x-organization-id>'}
};
fetch('https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{campaign_assignment_id}/resend', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{campaign_assignment_id}/resend"
headers = {
"x-api-key": "<x-api-key>",
"x-organization-id": "<x-organization-id>"
}
response = requests.post(url, headers=headers)
print(response.text)curl --request POST \
--url https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{campaign_assignment_id}/resend \
--header 'x-api-key: <x-api-key>' \
--header 'x-organization-id: <x-organization-id>'{
"id": "<string>",
"campaign_id": "<string>",
"last_invited_at": "<string>",
"status": "<string>",
"assignment": {}
}← Custom KPI
Re-fire the invite email for a specific campaign recipient. Updates the recipient’s
last_invited_at timestamp.
The campaign must not be locked or past its period. To invite all pending recipients at once, use Send Invites.
Request
Headers
string
required
Your API key for authenticationExample:
sk_live_1234567890abcdefstring
required
Your organization UUIDExample:
a8315ef3-dd50-43f8-b7ce-d839e68d51faPath Parameters
string
required
UUID of the parent dataset
string
required
UUID of the campaign
string
required
UUID of the campaign-assignment to re-invite
Response
Returns the campaign-assignment with refreshedlast_invited_at (HTTP 200).
string
Campaign-assignment UUID.
string
Parent campaign UUID.
string
Updated timestamp of the re-sent invite (ISO 8601).
string
Derived status:
awaiting, completed, or locked.object
Embedded dataset assignment with recipient details.
Example
curl -X POST "https://api.dcycle.io/v1/custom-kpi-datasets/${DATASET_ID}/campaigns/${CAMPAIGN_ID}/assignments/${CA_ID}/resend" \
-H "x-api-key: ${DCYCLE_API_KEY}" \
-H "x-organization-id: ${DCYCLE_ORG_ID}"
import requests
import os
headers = {
"x-api-key": os.getenv("DCYCLE_API_KEY"),
"x-organization-id": os.getenv("DCYCLE_ORG_ID"),
}
dataset_id = "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
campaign_id = "b2c3d4e5-f6a7-8901-bcde-f12345678901"
ca_id = "c3d4e5f6-a7b8-9012-cdef-123456789012"
response = requests.post(
f"https://api.dcycle.io/v1/custom-kpi-datasets/{dataset_id}/campaigns/{campaign_id}/assignments/{ca_id}/resend",
headers=headers,
)
ca = response.json()
print(f"Invite re-sent at: {ca['last_invited_at']}")
const axios = require('axios');
const headers = {
'x-api-key': process.env.DCYCLE_API_KEY,
'x-organization-id': process.env.DCYCLE_ORG_ID,
};
const datasetId = 'a1b2c3d4-e5f6-7890-abcd-ef1234567890';
const campaignId = 'b2c3d4e5-f6a7-8901-bcde-f12345678901';
const caId = 'c3d4e5f6-a7b8-9012-cdef-123456789012';
axios.post(
`https://api.dcycle.io/v1/custom-kpi-datasets/${datasetId}/campaigns/${campaignId}/assignments/${caId}/resend`,
null,
{ headers }
)
.then(response => console.log(`Re-invited: ${response.data.last_invited_at}`));
Successful Response
{
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"campaign_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"assignment_id": "d4e5f6a7-b8c9-0123-defa-234567890123",
"last_invited_at": "2025-06-21T10:00:00Z",
"completed_at": null,
"status": "awaiting",
"assignment": {
"id": "d4e5f6a7-b8c9-0123-defa-234567890123",
"dataset_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"organization_id": "a8315ef3-dd50-43f8-b7ce-d839e68d51fa",
"facility_id": null,
"data_owner_user_id": null,
"data_owner_email": "supplier@example.com",
"created_at": "2025-06-10T08:00:00Z",
"updated_at": null
},
"created_at": "2025-06-15T10:00:00Z",
"updated_at": "2025-06-21T10:00:00Z"
}
Common Errors
401 Unauthorized
Cause: Missing or invalid API key{"detail": "Invalid API key for organization", "code": "INVALID_API_KEY"}
403 Forbidden
Cause: The authenticated user is not a member of the organization{"detail": "Logged User is not Member of Organization", "code": "LOGGED_USER_NOT_MEMBER"}
404 Not Found
Cause: Campaign-assignment not found{
"detail": "Campaign-assignment not found"
}
Related Endpoints
Send Invites
Bulk-send to all pending recipients
Get Campaign
View recipient statuses
Was this page helpful?