API Reference
Get one campaign content approval
Returns one workflow instance's pending content approval payload. Use the returned `pendingContent[].nodeId` values when updating workflow-run messages. For comments, `postLink` and `postSummary` identify the selected post that the comment would target; for connection requests, `requestMessage` is the editable invite note.
/v1/accounts/{accountGroupId}/campaigns/{campaignId}/workflow-instances/{workflowInstanceId}/content-approvalSingle approval payload
Use this endpoint when your approval UI opens one workflow instance at a time. The response includes editable content item nodeIds, text fields, comment post context, and invite-note requestMessage values needed for the approve request.
Integration notes
Required API permission
campaigns:read.
Prerequisites
integration_api_key, account_group_access.
Parameters
accountGroupIdPathType: string
Account group ID that scopes the request.
Required
campaignIdPathType: string
Campaign ID that identifies the campaign to read or mutate.
Required
workflowInstanceIdPathType: string
Unique identifier for the workflow instance.
Required
Request body
Responses
Pending approval content for one workflow instance
Schema: CampaignContentApprovalSuccessResponse
Request validation failed
Schema: ValidationErrorResponse
Invalid or missing API key
Schema: ErrorResponse
Missing required permission
Schema: ErrorResponse
Resource not found
Schema: ErrorResponse
Rate limit exceeded
Schema: ErrorResponse
Internal server error
Schema: ErrorResponse
Upstream service error
Schema: ErrorResponse
Response examples
200 Example JSONCampaignContentApprovalSuccessResponse
{
"success": true,
"data": {
"workflowInstanceId": "507f1f77bcf86cd799439011",
"campaignId": "507f1f77bcf86cd799439011",
"campaignName": "Avery Stone",
"linkedListId": "507f1f77bcf86cd799439011",
"leadId": "507f1f77bcf86cd799439011",
"personId": "507f1f77bcf86cd799439011",
"firstName": "Avery Stone",
"lastName": "Avery Stone",
"title": "string",
"companyName": "Avery Stone",
"photoUrl": "https://example.com/resource",
"linkedinUrl": "https://example.com/resource",
"latestStep": "string",
"pendingContent": [
{
"nodeId": "507f1f77bcf86cd799439011",
"nodeSubType": "string",
"contentType": "direct_message",
"subject": "Quick follow-up",
"message": "Thanks for the context. I can send over details this afternoon.",
"requestMessage": "Thanks for the context. I can send over details this afternoon.",
"generatedAt": "string",
"previousStepSubType": "string",
"workflowPath": [
{
"conditionSubType": "string",
"branch": "string"
}
],
"reviewContext": {
"displayLabel": "string",
"sequence": 25,
"contentSequence": 25,
"pathLabel": "string",
"previousStepSubType": "string"
},
"postLink": "string",
"postSummary": "string"
}
],
"workflowReview": {
"nodes": [
{
"nodeId": "507f1f77bcf86cd799439011",
"nodeSubType": "string",
"nodeType": "TRIGGER",
"displayLabel": "string",
"sequence": 25,
"contentSequence": 25,
"isContentStep": true
}
],
"edges": [
{
"sourceNodeId": "507f1f77bcf86cd799439011",
"targetNodeId": "507f1f77bcf86cd799439011",
"branch": "true"
}
]
}
},
"error": null,
"traceId": "507f1f77bcf86cd799439011"
}400 Example JSONValidationErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}401 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}403 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}404 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}429 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}500 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}502 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}