Workflows

List valid call disposition values (system + this org's custom)

Return every disposition value accepted by disposition_filters on the new_call_disposition trigger - system values AND the caller org's own custom dispositions.

Each entry carries origin: system for the built-in vocabulary, custom for an org-defined one (whose value is the stored custom_{id} key, never the display name). category keeps its existing meaning: sdr_selectable a rep can pick it, system_set only the dialer backend writes it.

Authority for the system half is voice's SDR_SELECTABLE_DISPOSITIONS (voice/graph8_livekit/schemas/dispositions.py) plus the two system-set values the dialer also emits (sdr_hangup, failed). That half is inlined here and a parity test (developer_api/tests/test_workflow_dispositions.py) fails the build if voice adds a value that is not mirrored - the previous "mirror the change here" comment was not enforced and silently went stale when busy was added.

The custom half comes from voice's GET /api/dialer/dispositions/{org_id}, with the org pinned server-side from the authenticated caller and echoed in the X-Org-Id header voice's tenant gate requires. Nothing about the request body or query can influence which org is read.

Degraded mode: if voice is unreachable or errors, this returns the system vocabulary alone with source='static_fallback' and logs a warning, rather than failing the whole call. An agent that sees source='static_fallback' should say it could not confirm custom dispositions instead of asserting none exist.

Legacy aliases (positive/neutral/negative) are deliberately absent: normalize_disposition rewrites them before storage, so a filter on them could never match.

get/workflows/dispositions

Request

  • Base URL: https://be.graph8.com/api/v1
  • URL: https://be.graph8.com/api/v1/workflows/dispositions
  • Auth: HTTP bearer

Headers

Authorizationstring nullable
X-Target-Org-Idstring nullable

Response

Successful Response

object required

Changes

No recorded changes to this operation across all 2 revisions of this API.