---
title: "CallEntryWriteRequest"
url: "https://developers.zinnia.com/apis/orion-api/versions/716288b7-e96e-41a7-abc5-63925410717a/schemas/CallEntryWriteRequest"
---

> Full API specification: https://developers.zinnia.com/apis/orion-api/versions/716288b7-e96e-41a7-abc5-63925410717a.md

# CallEntryWriteRequest

Full-field name-based request shared by POST and PUT. Tenant selection and authorization never use payload userName.

## OpenAPI definition

```yaml
openapi: 3.0.4
info:
  title: Orion Call Center API
  version: v1
servers:
  - url: https://qa.api.zinnia.io
components:
  schemas:
    CallEntryWriteContractRequest:
      required:
        - contractNumber
      type: object
      properties:
        contractNumber:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9,-]+$
          type: string
          description: Trimmed contract number, unique case-insensitively within the
            request.
        callTypes:
          type: array
          items:
            maxLength: 50
            minLength: 1
            pattern: ^[A-Za-z0-9 &'/-]+$
            type: string
          description: Explicit active call-type names. Duplicate canonical values within
            a contract are rejected.
          nullable: true
      additionalProperties: false
    CallEntryWriteRequest:
      required:
        - callerName
        - callerType
      type: object
      properties:
        userName:
          maxLength: 254
          minLength: 1
          pattern: ^[^\u0000-\u001F\u007F]+$
          type: string
          description: Conditional interim M2M actor. Ignored when a configured token
            username claim exists; otherwise trimmed, opaque, required, and
            limited to 255 characters.
          nullable: true
        contracts:
          type: array
          items:
            $ref: "#/components/schemas/CallEntryWriteContractRequest"
          description: Optional contracts; missing, null, and empty are equivalent.
            Contract and call-type order is non-semantic for idempotency.
          nullable: true
        callerType:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          type: string
          description: Required active caller-type name, trimmed and matched
            case-insensitively to its canonical tenant value.
          nullable: true
        callType:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          type: string
          description: Canonical root call-type name. Required without contracts;
            otherwise supplies an inheritable default. If absent, every contract
            must supply at least one call type.
          nullable: true
        productType:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          type: string
          description: Optional active product-type name resolved to its canonical tenant
            value.
          nullable: true
        priority:
          maximum: 255
          minimum: 0
          type: integer
          format: int32
          nullable: true
        notes:
          maxLength: 7000
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          type: string
          nullable: true
        survey:
          maxLength: 10
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          enum:
            - Not Offered
            - Taken
            - Not Taken
          type: string
          nullable: true
        isExchange:
          type: boolean
          nullable: true
        isSuspended:
          type: boolean
          nullable: true
        isFollowUpCompleted:
          type: boolean
          nullable: true
        followUpRequestedDate:
          type: string
          format: date-time
          nullable: true
        followUpCompletedDate:
          type: string
          format: date-time
          nullable: true
        suspendedUntilDate:
          type: string
          format: date-time
          nullable: true
        callTime:
          type: string
          format: date-time
          nullable: true
        callerName:
          maxLength: 500
          minLength: 1
          pattern: ^[A-Za-z ,.'-]+$
          type: string
          description: Required caller identity. Trimmed and limited to 500 characters.
          nullable: true
        phoneFaxNum:
          maxLength: 20
          minLength: 1
          pattern: ^\+?[0-9() .-]+$
          type: string
          format: tel
          nullable: true
        reference:
          maxLength: 200
          minLength: 1
          pattern: ^[A-Za-z0-9,-]+$
          type: string
          nullable: true
        isWatchOne:
          type: boolean
          nullable: true
        isWatchTwo:
          type: boolean
          nullable: true
        transactionType:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          type: string
          description: Optional active transaction-type name resolved to its canonical
            tenant value.
          nullable: true
        isEscalated:
          type: boolean
          nullable: true
        initiatedDate:
          type: string
          format: date-time
          nullable: true
        completeInOrion:
          type: boolean
          nullable: true
        isWatchThree:
          type: boolean
          nullable: true
        transactionAmount:
          type: number
          format: double
          nullable: true
        sessionID:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9._:-]+$
          type: string
          nullable: true
        authStatus:
          type: string
          nullable: true
        dob:
          type: string
          format: date-time
          nullable: true
        ssn:
          type: string
          nullable: true
        callSummary:
          maxLength: 7000
          minLength: 1
          pattern: ^[A-Za-z0-9 &'/-]+$
          type: string
          nullable: true
        callSummaryDate:
          type: string
          format: date-time
          nullable: true
        documentNumber:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9,-]+$
          type: string
          nullable: true
        callId:
          maxLength: 50
          minLength: 1
          pattern: ^[A-Za-z0-9._:/-]+$
          type: string
          nullable: true
      additionalProperties: false
      description: Full-field name-based request shared by POST and PUT. Tenant
        selection and authorization never use payload userName.
```
