Per-contact reconciliation: the latest attempt and its structured outcome
GET
/v1/campaigns/{campaign_id}/outcomes
const url = 'https://api.vocapable.com/v1/campaigns/example/outcomes?limit=50';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.vocapable.com/v1/campaigns/example/outcomes?limit=50' \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”campaign_id
required
Campaign Id
string
Query Parameters
Section titled “Query Parameters”limit
Limit
integer
Responses
Section titled “Responses”Successful Response
Media typeapplication/json
CursorPage[CampaignOutcomeSummary]
object
data
required
Data
Array<object>
CampaignOutcomeSummaryOne row per targeted contact: the latest attempt plus its structured outcome.
outcome is null wherever no structured outcome was recorded - no answer, machine,
opt-out, or a conversation that ended short of the objective.
object
contact_id
required
Contact Id
string
contact_phone
required
Contact Phone
string
attempts
required
Attempts
integer
latest_attempt_id
required
Latest Attempt Id
string
latest_attempt_state
required
AttemptState
string
disposition
Any of:
Disposition
Terminal outcome of a contact attempt (docs/06-campaign-engine.md).
string
null
outcome
Any of:
One of: discriminator: kind
ShiftConfirmationOutcome
AppointmentOutcome
null
last_activity_at
required
Last Activity At
string format: date-time
has_more
Has More
boolean
Example
{ "data": [ { "latest_attempt_state": "pending", "disposition": "completed_goal", "outcome": { "kind": "shift_confirmation", "response": "confirmed" } } ], "has_more": false}Validation Error
Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationErrorobject
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example", "input": "example", "ctx": {} } ]}