Data model

The Experience APIs work with two resources — the Experience Connection and the Experience Assignment — plus a small set of shared types. This page is the entity-level overview; per-operation schemas, examples, and an interactive console are in the API Explorer, and each heading links to the full generated schema page.

Experience Connection

The link between your Experience and a single Alianza account. It tracks configuration state and controls whether media (SIPREC or inbound SIP) flows. Created in step 2 of either walkthrough.

Field Type Notes
id string, read-only Connection ID — save it at creation.
accountId string, read-only Resolved from the tn parameter at creation.
accountName string, read-only Display name of the account, e.g. Acme Communications. Added in 1.0.0.
experienceId string Your Experience.
state ExperienceConnectionState Controls media flow.

Full schema: ExperienceConnection.

ExperienceConnectionState

  • ACTIVE — the Experience is live for all assigned users/TNs.
  • INACTIVE — connection exists but the Experience is not currently live.
  • CONNECTEDdeprecated legacy value that behaves like INACTIVE. Still accepted, and may appear in responses for connections created by older integrations; new integrations should send and expect INACTIVE.

State transitions are unrestricted; a 409 Conflict on PUT /experience-connections/{id} means the connection is already in the requested state. Full schema: ExperienceConnectionState.

Experience Assignment

Binds your Experience to a target — an entire account (Post-Call) or a single phone number (Virtual Agent). Once assigned and the connection is ACTIVE, media flows for the target's calls.

Field Type Notes
id string, read-only Assignment ID.
experienceId string Your Experience.
accountId string, read-only Account that owns the target.
targetType TargetType Scope of the assignment.
targetValue TargetValue Identifier matching the type.
updatedAt string (date-time), read-only Last modification, ISO 8601 UTC.

Full schema: ExperienceAssignment.

TargetType and TargetValue

targetType selects the assignment scope; targetValue's required format follows from it:

targetType targetValue format Example Used by
ACCOUNT UUID c07881d7-200f-424e-b760-f24838f31eef Post-Call (covers all current and future users in the account)
PHONE_NUMBER E.164 +14155551234 Virtual Agent (one number, max one Virtual Agent Experience per number)
USER UUID c07881d7-200f-424e-b760-f24838f31eef Scoping the Experience to one user's phones. An ACCOUNT assignment covers every user in the account without creating per-user assignments, so use USER only when you deliberately want a narrower scope.

Full schemas: TargetType, TargetValue.

Paging

List endpoints return cursor-paged envelopes (PagedExperienceConnectionList, PagedExperienceAssignmentList): an entities array, a pageSize, and a cursor to pass back for the next page. pageSize accepts 1100 (default 100) as of 1.0.0. Full schemas: connections, assignments.

Errors — ProblemDetails

Every error response uses the RFC 9457 ProblemDetails shape: status, title, and a traceId for support correlation, plus optional detail and a per-field errors array for validation failures. The Errors page catalogs when each status occurs; the full shape is on ProblemDetails.