Optum Claim Status API

Claim Status API

Business capability
Claim Production & Submission BC-2870.30

Operations 4

POST /claimstatus/v2/raw-x12/enhanced Check Claim Status x12 #
POST /medicalnetwork/claimstatus/v2/ Check Claim Status #
GET /medicalnetwork/claimstatus/v2/healthcheck Health Check #
POST /medicalnetwork/claimstatus/v2/raw-x12 Check Claim Status x12 #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/optum-claim-status-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

optum-claim-status-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Medical Network Claim Status V2 Claim Status API
  description: 276 Claim Status
  version: V2
servers:
- url: https://sandbox-apigw.optum.com
  description: Optum
tags:
- name: Claim Status API
  description: Claim Status API
paths:
  /claimstatus/v2/raw-x12/enhanced:
    post:
      tags:
      - Claim Status API
      summary: Check Claim Status x12
      operationId: rawX12Enhanced
      parameters:
      - name: Authorization
        in: header
        description: 'Bearer Your-Access-Token<br/>Example: <b>Bearer eyJraWQiOiIxIiwid…</b>'
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RawX12RequestExtension'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExtendedClaimStatusResponse'
  /medicalnetwork/claimstatus/v2/:
    post:
      tags:
      - Claim Status API
      summary: Check Claim Status
      operationId: claimstatus
      parameters:
      - name: Authorization
        in: header
        description: 'Bearer Your-Access-Token<br/>Example: <b>Bearer eyJraWQiOiIxIiwid…</b>'
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Request'
            example:
              controlNumber: '123456789'
              tradingPartnerName: TestPayer
              tradingPartnerServiceId: serviceId
              providers:
              - organizationName: TestProvider
                firstName: John
                lastName: Doe
                npi: '1234567893'
                spn: '123456'
                tin: 0123456789
                taxId: 0123456789
                etin: ETIN12345
                providerType: BillingProvider
              subscriber:
                memberId: '0000000000'
                firstName: johnone
                lastName: doeone
                gender: M
                dateOfBirth: '18800102'
                groupNumber: '0000000000'
              dependent:
                firstName: janeone
                lastName: doeone
                gender: F
                dateOfBirth: '18800101'
                groupNumber: '0000000000'
              encounter:
                beginningDateOfService: '20100101'
                endDateOfService: '20100102'
                trackingNumber: ABCD
                tradingPartnerClaimNumber: '1234567890'
                locationIdentifier: LU12345
                billingType: '111'
                patientAccountNumber: PAT123456
                pharmacyPrescriptionNumber: RX123456
                clearingHouseClaimNumber: D9123456
                submittedAmount: '100.00'
              serviceLineInformation:
                productOrServiceIDQualifier: AD
                procedureCode: D0120
                procedureModifiers: []
                lineItemChargeAmount: '100.00'
                revenueCode: '0123'
                unitsOfServiceCount: '1'
                lineItemControlNumber: FJ12345
                serviceLineDate: '20100101'
                serviceLineEndDate: '20100102'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
  /medicalnetwork/claimstatus/v2/healthcheck:
    get:
      tags:
      - Claim Status API
      summary: Health Check
      operationId: healthCheck
      parameters:
      - name: Authorization
        in: header
        description: 'Bearer Your-Access-Token<br/>Example: <b>Bearer eyJraWQiOiIxIiwid…</b>'
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/vnd.changehealthcare.claimstatus-v2+json:
              schema:
                $ref: '#/components/schemas/HealthCheckResponse'
  /medicalnetwork/claimstatus/v2/raw-x12:
    post:
      tags:
      - Claim Status API
      summary: Check Claim Status x12
      operationId: rawX12
      parameters:
      - name: Authorization
        in: header
        description: 'Bearer Your-Access-Token<br/>Example: <b>Bearer eyJraWQiOiIxIiwid…</b>'
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RawX12Request'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
components:
  schemas:
    Extensions:
      type: object
      properties:
        type:
          type: string
          description: 'NOTE: Allowed Values are: ''CLAIM_STATUS'' Request to include claim, check and cob extended claim status data in addition to the 277 response.'
          enum:
          - CLAIM_STATUS
      required:
      - type
    Request:
      type: object
      properties:
        controlNumber:
          type: string
          description: 'Header, Segment: ST02 (no loop), Notes: Transaction Set Control Number'
          example: '123456789'
          maxLength: 9
          minLength: 9
        tradingPartnerName:
          type: string
          description: 'Loop: 2100A, Segment: NM1, Element: NM103, Notes: organizational name'
          example: TestPayer
        tradingPartnerServiceId:
          type: string
          description: 'Loop: 2100A Segment: NM1, Element: NM109, Notes: we send this as MN108 as PI = Payer Identification'
          example: serviceId
          maxLength: 80
          minLength: 2
        providers:
          type: array
          description: 'Loop: 2100B, Loop: 2100C'
          items:
            $ref: '#/components/schemas/Provider'
          maxItems: 2147483647
          minItems: 1
        subscriber:
          $ref: '#/components/schemas/Subscriber'
          description: 'Loop: 2000D'
        dependent:
          $ref: '#/components/schemas/Member'
          description: 'Loop: 2000E'
        encounter:
          $ref: '#/components/schemas/Encounter'
          description: 'Loop: 2200D or 2200E'
        serviceLineInformation:
          $ref: '#/components/schemas/ServiceLineInformation'
          description: 'Loop: 2220D or 2220E'
      required:
      - controlNumber
      - providers
      - subscriber
    ClaimStatus:
      type: object
      properties:
        statusCategoryCode:
          type: string
          description: 'Segment: STC, Element: STC01-1, Notes: Status Category Code'
        statusCategoryCodeValue:
          type: string
          description: 'Segment: STC, Element: STC01-1, Notes: Status Category Code value'
        statusCode:
          type: string
          description: 'Segment: STC, Element: STC01-2, Notes: Status Code'
        statusCodeValue:
          type: string
          description: 'Segment: STC, Element: STC01-2, Notes: Status Code value'
        entityCode:
          type: string
          description: 'Segment: STC, Element: STC01-3, Notes: Entity Code'
        entity:
          type: string
          description: 'Segment: STC, Element: STC01-3, Notes: Entity Code value'
        effectiveDate:
          type: string
          description: 'Segment: STC, Element: STC02, Notes: Effective Date'
        submittedAmount:
          type: string
          description: 'Segment: STC, Element: STC04, Notes: Total Claim Charge Amount'
        amountPaid:
          type: string
          description: 'Segment: STC, Element: STC05, Notes: Claim Payment Amount'
        paidDate:
          type: string
          description: 'Segment: STC, Element: STC06, Notes: Adjudication Finalized Date'
        checkIssueDate:
          type: string
          description: 'Segment: STC, Element: STC08, Notes: Remittance Date'
        checkNumber:
          type: string
          description: 'Segment: STC, Element: STC09, Notes: Remittance Trace Number'
        secondaryStatusCategoryCode:
          type: string
          description: 'Segment: STC, Element: STC10-1, Notes: Status Category Code'
        secondaryStatusCategoryCodeValue:
          type: string
          description: 'Segment: STC, Element: STC10-1, Notes: Status Category Code value'
        secondaryStatusCode:
          type: string
          description: 'Segment: STC, Element: STC10-2, Notes: Status Code'
        secondaryStatusCodeValue:
          type: string
          description: 'Segment: STC, Element: STC10-2, Notes: Status Code value'
        secondaryEntityCode:
          type: string
          description: 'Segment: STC, Element: STC10-3, Notes: Entity Code'
        secondaryEntity:
          type: string
          description: 'Segment: STC, Element: STC10-3, Notes: Entity Code value'
        tertiaryStatusCategoryCode:
          type: string
          description: 'Segment: STC, Element: STC11-1, Notes: Status Category Code'
        tertiaryStatusCategoryCodeValue:
          type: string
          description: 'Segment: STC, Element: STC11-1, Notes: Status Category Code value'
        tertiaryStatusCode:
          type: string
          description: 'Segment: STC, Element: STC11-2, Notes: Status Code'
        tertiaryStatusCodeValue:
          type: string
          description: 'Segment: STC, Element: STC11-2, Notes: Status Code value'
        tertiaryEntityCode:
          type: string
          description: 'Segment: STC, Element: STC11-3, Notes: Entity Code'
        tertiaryEntity:
          type: string
          description: 'Segment: STC, Element: STC11-3, Notes: Entity Code value'
        trackingNumber:
          type: string
          description: 'Segment: TRN, Element: TRN02, Notes: Tracking Number'
        claimServiceDate:
          type: string
          description: 'Segment: DTP, Element: DTP03, Notes: Claim Service Period'
        tradingPartnerClaimNumber:
          type: string
          description: 'Segment: REF, Element: REF02, Notes: REF01 for this will be 1K'
        patientAccountNumber:
          type: string
          description: 'Segment: REF, Element: REF02, Notes: REF01 for this will be EJ'
        clearingHouseClaimNumber:
          type: string
          description: 'Segment: REF, Element: REF02, Notes: REF01 for this will be D9'
    HealthCheckResponse:
      type: object
      properties:
        status:
          type: string
          description: Health Status
          example: UP
        version:
          type: string
          description: API version
          example: V2
    ResponseExtensions:
      type: object
      properties:
        statusCode:
          type: string
          description: 'NOTE: Allowed Values are: ''0'' Success, ''1'' Not Authorized, ''2'' Internal Error,''3'' Extension Not Applicable, ''4'' Extension Not Available At This time, ''5''Invalid Request Extension Type'
          enum:
          - '0'
          - '1'
          - '2'
          - '3'
          - '4'
          - '5'
        statusDescription:
          type: string
        extensions:
          type: array
          items:
            $ref: '#/components/schemas/Extensions'
    RequestExtensions:
      type: object
      properties:
        extensions:
          type: array
          items:
            $ref: '#/components/schemas/Extensions'
    ContactInformation:
      type: object
      properties:
        name:
          type: string
          description: 'Segment: PER, Element: PER02, Notes: Payer’s name.'
          example: TEST PAYER DEPARTMENT
        electronicDataInterChangeAccessNumber:
          type: string
          description: 'Segment: PER, Element: PER04, PER06 or PER08, Notes: Payer''s electronic data interchange access number. PER03=PER05=PER07=ED'
          example: '111111'
        email:
          type: string
          description: 'Segment: PER, Element: PER04, PER06 or PER08, Notes: Payer''s email. PER03=PER05=PER07=EM'
          example: test@test.com
        fax:
          type: string
          description: 'Segment: PER, Element: PER04, PER06 or PER08, Notes: Payer''s facsimile number. PER03=PER05=PER07=FX'
          example: 123-456-7890
        phone:
          type: string
          description: 'Segment: PER, Element: PER04, PER06 or PER08, Notes: Payer''s telephone number. PER03=PER05=PER07=TE'
          example: 123-456-7890
        phoneExtension:
          type: string
          description: 'Segment: PER, Element: PER04, PER06 or PER08, Notes: Payer''s telephone extension. PER05=PER07=EX'
          example: '0000'
    TransactionIdentifier:
      type: object
      properties:
        customerTransactionId:
          type: string
          description: The number assigned by the originator to identify the transaction within the originator's business application system
        transactionId:
          type: string
          description: The number assigned by the originator to identify the transaction within the originator's business application system
    ExtendedClaimStatusResponse:
      type: object
      properties:
        x12:
          type: string
        extensions:
          $ref: '#/components/schemas/ResponseExtensions'
    Status:
      type: object
      properties:
        statusCategoryCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC01-1, Notes: The health care claim status category code. Example: F3'
        statusCategoryCodeValue:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC01-1, Notes: Value of the category code. F3 = Finalized/Revised - Adjudication information has been changed'
        statusCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC01-2, Notes: Status code used to identify the status of an entire claim or a service line. Example: 3'
        statusCodeValue:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC01-2, Notes: Status Code value. 3 = Claim has been adjudicated and is awaiting payment cycle.'
        entityCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element STC01-3, Notes:Code for the entity. Example: 2P'
        entity:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element STC01-3, Notes: Value of the entity code. Example: 2P=Public Health Service Facility'
        secondaryStatusCategoryCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC10-1, Notes: The health care claim status category code. Example: F3'
        secondaryStatusCategoryCodeValue:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC10-1, Notes: Value of the category code. F3 = Finalized/Revised - Adjudication information has been changed'
        secondaryStatusCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC10-2, Notes: Status code used to identify the status of an entire claim or a service line. Example: 3'
        secondaryStatusCodeValue:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC10-2, Notes: Status Code value. 3 = Claim has been adjudicated and is awaiting payment cycle.'
        secondaryEntityCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element STC10-3, Notes:Code for the entity. Example: 2P'
        secondaryEntity:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element STC10-3, Notes: Value of the entity code. Example: 2P=Public Health Service Facility'
        tertiaryStatusCategoryCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC11-1, Notes: The health care claim status category code. Example: F3'
        tertiaryStatusCategoryCodeValue:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC11-1, Notes: Value of the category code. F3 = Finalized/Revised - Adjudication information has been changed'
        tertiaryStatusCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC11-2, Notes: Status code used to identify the status of an entire claim or a service line. Example: 3'
        tertiaryStatusCodeValue:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC11-2, Notes: Status Code value. 3 = Claim has been adjudicated and is awaiting payment cycle.'
        tertiaryEntityCode:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element STC11-3, Notes:Code for the entity. Example: 2P'
        tertiaryEntity:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element STC11-3, Notes: Value of the entity code. Example: 2P=Public Health Service Facility'
        effectiveDate:
          type: string
          description: 'Loop: 2220D and 2220E, Segment: STC, Element: STC02, Notes: Effective date of the status information. Date the service was placed in this status by the information source’s adjudication process. Date or Date range, format YYYYMMDD'
    RawX12Request:
      type: object
      properties:
        x12:
          type: string
    Response:
      type: object
      description: Response
      properties:
        controlNumber:
          type: string
          description: Provided by the submitter in the 270 Request. Transaction Set Control Number.
        tradingPartnerServiceId:
          type: string
          description: ID used by Clearing House for the trading partner.
        payer:
          $ref: '#/components/schemas/Payer'
          description: 'Loop: 2100A'
        providers:
          type: array
          description: 'Loop: 2100B and 2100C'
          items:
            $ref: '#/components/schemas/Provider'
        subscriber:
          $ref: '#/components/schemas/Subscriber'
          description: 'Loop: 2000D'
        dependent:
          $ref: '#/components/schemas/Member'
          description: 'Loop: 2000E'
        claims:
          type: array
          description: 'Loop: 2200D and 2200E'
          items:
            $ref: '#/components/schemas/Claim'
        reassociationKey:
          type: string
          description: 'Segment: ISA, Element: ISA13, Notes: Interchange control number'
        errorResponse:
          $ref: '#/components/schemas/ErrorResponse'
        status:
          type: string
          description: 'Loop: 2200D, Segment: STC, Element: STC01, Health care claim status, Used to convey status of the entire claim or specific service line.'
        transactionSetAcknowledgement:
          type: string
          description: The 999 acknowledgment code
        implementationTransactionSetSyntaxError:
          type: string
          description: The 999 syntax error code
        x12:
          type: string
          description: Basic x12 edi response (for x12 endpoint)
        meta:
          $ref: '#/components/schemas/ResponseMeta'
          description: Meta data about the request
    ErrorDetail:
      type: object
      properties:
        field:
          type: string
          description: Attribute that is bad
        value:
          type: string
          description: Value of bad attribute
        code:
          type: string
          description: 'Code for the error. Example: INVALID_VALUE'
        description:
          type: string
          description: Description of the error code. Value provided in payer id should be a valid CHC assigned ERA payer ID
        location:
          type: string
          description: 'Segment/location where the error occurred. If this is a network/system error, there is no location attribute. Example: $.payerBenefits[0].payer'
        followupAction:
          type: string
          description: Any follow action required for the error. For AAA errors, this would be value for AAA04
    Subscriber:
      type: object
      properties:
        memberId:
          type: string
          description: 'Loop: 2100D, Segment: NM1, Element: NM109, Notes: The subscriber''s insurance member ID. Maps to subscriberId.'
          example: '0000000000'
          maxLength: 80
          minLength: 2
        firstName:
          type: string
          description: 'Loop: 2100D, Segment: NM1, Element: NM104, Notes: The subscriber''s first name as specified on their policy'
          example: johnone
          maxLength: 35
          minLength: 1
        lastName:
          type: string
          description: 'Loop: 2100D, Segment: NM1, Element: NM103, Notes: The subscriber''s last name as specified on their policy.'
          example: doeone
          maxLength: 60
          minLength: 1
        gender:
          type: string
          description: 'Loop: 2000D, 2000E, Segment: DMG, Element: DMG03, Notes: The subscriber''s gender as specified on their policy.'
          enum:
          - M
          - F
          - U
          example: M
          pattern: F|M|U
        dateOfBirth:
          type: string
          description: 'Loop: 2000D, Segment: DMG, Element: DMG02, Notes: The birth date as specified on the policy for the subscriber. Maps to BirthDate'
          example: '18800102'
        groupNumber:
          type: string
          description: 'Loop: 2200D, Segment: REF, Element: REF01, Notes: The group number associated with the subscriber.'
          example: '0000000000'
          maxLength: 50
          minLength: 1
      required:
      - firstName
      - lastName
      - memberId
    Provider:
      type: object
      properties:
        organizationName:
          type: string
          description: 'Segment: NM1, Element: NM103, Notes: Provider’s organization name. Can use organization or last name.'
          example: TestProvider
          maxLength: 60
          minLength: 1
        firstName:
          type: string
          description: 'Segment: NM1, Element: NM104, Notes: Maps to providerName'
          maxLength: 35
          minLength: 1
          example: John
        lastName:
          type: string
          description: 'Segment: NM1, Element: NM103, Notes: Provider last name. Can use organization or last name.'
          maxLength: 60
          minLength: 1
          example: Doe
        npi:
          type: string
          description: 'Loop: 2100B, 2100C, Segment: NM1, Element: NM109, Notes: National Provider Identification. Maps to provider NPI. NM108=XX'
          maxLength: 80
          minLength: 2
          example: '1234567893'
        spn:
          type: string
          description: 'Loop: 2100B, 2100C, Segment: NM1, Element: NM109, Notes: Service Provider Number. Maps to provider SPN. NM108=SV'
          maxLength: 80
          minLength: 2
          example: '123456'
        tin:
          type: string
          description: 'Loop: 2100B, 2100C, Segment: NM1, Element: NM109, Notes: Taxpayer’s Identification Number. Maps to provider TIN. NM108=FI'
          maxLength: 80
          minLength: 2
          example: 0123456789
        taxId:
          type: string
          description: 'Loop: 2100B, Segment: NM1, Element: NM109, Notes: Taxpayer’s Identification Number used when ProviderType = BillingProvider'
          example: 0123456789
          maxLength: 80
          minLength: 2
        etin:
          type: string
          description: 'Loop: 2100B, Segment: NM1, Element: NM109, Notes: Electronic transmitter identification Number (ETIN) used when ProviderType = BillingProvider'
          maxLength: 80
          minLength: 2
          example: ETIN12345
        providerType:
          type: string
          description: 'Segment: NM1, Notes: Code for entity (Billing or Service) Billing Provider: Loop 2100B, NM101=41 (required), Service Provider: Loop 2100C, NM101=1P if not present it is added and assigned tin = BillingProvider taxId'
          enum:
          - BillingProvider
          - ServiceProvider
          example: BillingProvider
          pattern: BillingProvider|ServiceProvider
      required:
      - providerType
    Payer:
      type: object
      description: Payer
      properties:
        organizationName:
          type: string
          description: 'Segment: NM1, Element: NM103, Notes: Payers’s organization name.'
          example: TestPayer
        payerIdentification:
          type: string
          description: 'Segment: NM1, Element: NM109, Notes: Payers’s identification number established through trading partner agreement. NM108=PI'
          example: '12345'
        centersForMedicareAndMedicaidServicePlanId:
          type: string
          description: 'Segment: NM1, Element: NM109, Notes: Use when reporting Health Plan ID (HPID) or Other Entity Identifier (OEID). NM108=XV'
          example: '12345'
        contactInformation:
          $ref: '#/components/schemas/ContactInformation'
          description: 'Segment: PER'
    Encounter:
      type: object
      properties:
        beginningDateOfService:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: DTP, Element: DTP03, Notes: Date Time Period - Start Date'
          example: '20100101'
        endDateOfService:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: DTP, Element: DTP03, Notes: Date Time Period - End Date'
          example: '20100102'
        trackingNumber:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: TRN, Element: TRN02, Notes: This is the claim status tracking number assigned to the status query for the claim.'
          example: ABCD
          maxLength: 50
          minLength: 1
        tradingPartnerClaimNumber:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: REF, Element: REF02, Notes: This is the payer assigned claim number. descriptions goes in REF02 where REF01=1K'
          maxLength: 50
          minLength: 1
          example: '1234567890'
        locationIdentifier:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: REF, Element: REF02, Notes: Required if application or location system identifier is known. descriptions goes in REF02 where REF01=LU'
          maxLength: 50
          minLength: 1
          example: LU12345
        billingType:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: REF, Element: REF02, Notes: Billing type reference ID. Example: billing type for inpatient services is 111. descriptions goes in REF02 where REF01=BLT'
          maxLength: 50
          minLength: 1
          example: '111'
        patientAccountNumber:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: REF, Element: REF02, Notes: Patient account number provided by service provider. description goes in REF02 where REF01=EJ'
          maxLength: 50
          minLength: 1
          example: PAT123456
        pharmacyPrescriptionNumber:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: REF, Element: REF02, Notes: Patient pharmacy prescription number. description goes in REF02 where REF01=XZ'
          maxLength: 50
          minLength: 1
          example: RX123456
        clearingHouseClaimNumber:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: REF, Element: REF02, Notes: Claim number provided by clearing house. description goes in REF02 where REF01=D9'
          maxLength: 50
          minLength: 1
          example: D9123456
        submittedAmount:
          type: string
          description: 'Loop: 2200D or 2200E, Segment: AMT, Element: AMT02, Notes: Submitted total charges. description goes in AMT02 where AMT01=T3'
          maxLength: 18
          minLength: 1
          example: '100.00'
    ServiceDetail:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/Service'
          description: 'Loop: 2220D, 2220E, Segment: SVC, Notes: Service Line Information'
        status:
          type: array
          description: 'Loop: 2220D, 2220E, Segment: STC, Notes: Service Line Status Information'
          items:
            $ref: '#/components/schemas/Status'
    RawX12RequestExtension:
      type: object
      properties:
        x12:
          type: string
        extensions:
          $ref: '#/components/schemas/RequestExtensions'
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          description: Code for the error.
          example: INVALIDMISSINGINPUTDATA
        description:
          type: string
          description: Description of the error code. Value provided in payer id should be a valid CHC assigned ERA payer Id.
        transactionIdentifier:
          $ref: '#/components/schemas/TransactionIdentifier'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorDetail'
    ResponseMeta:
      type: object
      properties:
        submitterId:
          type: string
          description: submitterId assigned to this request
        senderId:
          type: string
          description: senderId assigned to this request
        billerId:
          type: string
          description: billerId assigned to this request
        traceId:
          type: string
          description: Unique Id assigned to each request by Optum
        applicationMode:
          type: string
          description: Used by Optum to identify where this request can be found for support
    Claim:
      type: object
      properties:
        claimStatus:
          $ref: '#/components/schemas/ClaimStatus'
          description: 'Loop: 2200D, 2200E'
        serviceDetails:
          type: array
          description: 'Loop: 2220D, 2220E'
          items:
            $ref: '#/components/schemas/ServiceDetail'
    Member:
      type: object
      properties:
        firstName:
          type: string
          description: 'Loop: 2100E, Segment: NM1, Element: NM104, Notes: The dependent''s first name as specified on their policy.'
          example: janeone
          maxLength: 35
          minLength: 1
        lastName:
          type: string
          description: 'Loop: 2100E, Segment: NM1, Element: NM103, Notes: The dependent''s last name as specified on their policy.'
          example: doeone
          maxLength: 60
          minLength: 1
        gender:
          type: string
          description: 'Loop: 2000E, Segment: DMG, Element: DMG03, Notes: dependent''s gender as specified on their policy.'
          enum:
          - M
          - F
          - U
          example: F
          pattern: F|M|U
        dateOfBirth:
          type: string
          description: 'Loop: 2000E, Segment: DMG, Element: DMG02, Notes: The birth date as specified on the policy for the dependent.'
          example: '18800101'
        groupNumber:
          type: string
          description: 'Loop: 2200E, Segment: REF, Element: REF02 when REF01=6P, Notes: The group number associated with the subscriber and dependent. Maps to dependent groupNumber.'
          example: '0000000000'
          maxLength: 50
          minLength: 1
      required:
      - firstName
      - lastName
    ServiceLineInformation:
      type: object
      properties:
        productOrServiceIDQualifier:
          type: string
          description: 'Loop: 2210D, 2210E, Segment: SVC, Element: SVC01-1, Notes: Allowed Values are ''AD'' American Dental Association Codes, ''ER'' Jurisdiction Specific Procedure and Supply Codes, ''HC'' Health Care Financing Administration Common Procedural Coding System (HCPCS) Codes, ''HP'' Health Insurance Prospective Payment System (HIPPS) Skilled Nursing Facility Rate Code, ''IV'' Home Infusion EDI Coalition (HIEC) Product/Service Code, ''N4'' National Drug Code in 5-4-2 Format, ''NU'' National Uniform Billing Committee (NUBC) UB92 Codes, ''WK'' Advanced Billing Concepts (ABC) Codes'
          enum:
          - AD
          - ER
          - HC
          - HP
          - IV
          - N4
          - NU
          - WK
        procedureCode:
          type: string
          description: 'Loop: 2210D, 2210E, Segment: SVC, Element: SVC01-2, Notes: Procedure Code maps to Product/Serv

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/optum/refs/heads/main/openapi/optum-claim-status-api-api-openapi.yml