VayaFlow
Contacts

Contact Statuses

Understanding the different contact statuses in VayaFlow.

Contact Statuses

Contacts move through 22 possible statuses that represent their lifecycle from submission to final outcome. Statuses are shared between contacts and submissions.

Entry

StatusDescription
newContact was imported via CSV or created directly — not yet submitted for processing
pendingSubmitted to the qualification engine, waiting to be picked up
processingEngine is actively evaluating the contact

Qualification

StatusDescription
qualifiedPassed all qualification checks (DQ conditionals, required fields, field qualification)
disqualifiedFailed one or more qualification checks

Routing & Pre-Delivery

StatusDescription
queuedDelivery deferred because a cap was hit or the current time is outside the delivery schedule
pending_actionWaiting for a first submission action to complete (voice call, SMS, human review, or webhook)

Agent Interaction (In-Progress)

These statuses indicate ongoing contact attempts, typically from voice AI or SMS agents:

StatusDescription
no_answerCall attempt was not answered — will retry
voicemailVoicemail was left — will retry
contactedContact was reached but conversation is not yet resolved
scheduled_callbackContact requested a callback at a specific time

Agent Interaction (Terminal)

StatusDescription
no_contactAuto-dialer exhausted all configured attempts without reaching the contact

Documents

StatusDescription
pending_signatureA document requiring signature has been sent to the contact
document_sentA document not requiring signature has been sent
signedThe contact signed the document

Delivery

StatusDescription
deliveredContact was successfully posted to the client's endpoint
acceptedClient confirmed acceptance of the contact
duplicateClient reported the contact as a duplicate
failedDelivery attempt failed (endpoint returned an error or rejection)
errorSystem or technical error occurred during any processing phase

Terminal / Admin

StatusDescription
rejectedClient rejected the contact, or it was manually rejected by a user
dncContact is marked Do Not Contact

Status Transitions

Statuses generally flow forward through the lifecycle, but some transitions can move backward:

  • A queued contact re-enters processing when its schedule window opens or the cap resets
  • A no_answer or voicemail contact returns to the auto-dialer queue for retry
  • A delivered contact can be manually reposted, creating a new submission that starts at pending

Users can manually change a contact's status from the contacts list (inline editing) or the contact detail page. Manual status changes do not trigger engine reprocessing.

Approval Workflow

When a playbook uses a human review first submission action, the contact enters pending_action with an approval object:

  • pending — Awaiting review
  • approved — Reviewer approved, processing continues
  • rejected — Reviewer rejected, contact is marked rejected

Approval can be done from the contact detail page or via the POST /api/v1/contacts/{contactId}/approve API endpoint.

On this page