openapi: 3.2.0 info: description: API for Formatting Rule title: Formatting Rule Payersheet API version: v1 servers: - description: Generated server url url: https://sandbox-apigw.optum.com/rxn/formattingrules security: - oauth2_security: [] tags: - description: API to process Payersheet information name: Payersheet paths: /v1/standards-based-messaging/services/payer-sheet-service/telecomFormat/fetch: post: description: This endpoint is used to retrieve existing telecom claim formats based on provided criteria (e.g., payer ID, format ID, etc.). It returns the matching claim format(s) from the system for viewing or further processing. operationId: getClaimFormat requestBody: content: application/json: schema: properties: getClaimFormatRequest: $ref: '#/components/schemas/GetClaimFormatRequest' type: object required: true responses: '200': content: '*/*': schema: properties: getClaimFormatResponse: $ref: '#/components/schemas/GetClaimFormatResponse' type: object description: OK summary: Fetch Claim Format tags: - Payersheet /v1/standards-based-messaging/services/payer-sheet-service/telecomFormat/save: post: description: This endpoint is used to save a new telecom claim format. It accepts a payload containing the details of the claim format and persists it in the system. Typically used when creating a new configuration for telecom-based payer sheets. operationId: saveClaimFormat parameters: - in: query name: request required: true schema: properties: saveClaimFormatRequest: $ref: '#/components/schemas/SaveClaimFormatRequest' type: object responses: '200': content: '*/*': schema: type: string description: OK summary: Save Claim Format tags: - Payersheet /v1/standards-based-messaging/services/payer-sheet-service/telecomFormat/update: patch: description: This endpoint is used to update an existing telecom claim format. It requires the updated format data, including the identifier of the format to be modified. Useful for maintaining or correcting claim format configurations. operationId: updateClaimFormat parameters: - in: query name: request required: true schema: properties: updateClaimFormatRequest: $ref: '#/components/schemas/UpdateClaimFormatRequest' type: object responses: '200': content: '*/*': schema: type: string description: OK summary: Update Claim Format tags: - Payersheet components: schemas: JsonClaimFormat: properties: billingSequence: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 2 example: S1 bin: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 6 example: A99 chainID: type: string pattern: ^[0-9]*$ maxLength: 38 code: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 3 example: DG6 customer: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 128 example: customerName description: type: string maxLength: 250 format: ncpdp-alphanumeric example: NCPDP D.0 Claim effectiveDate: type: string format: rxn-date example: '2025-01-01' expirationDate: type: string format: rxn-date example: '2030-01-01' externalMessageId: type: string pattern: ^[0-9]*$ groupCode: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 15 example: D0 pcn: type: string maxLength: 10 format: ncpdp-alphanumeric example: A987 rems: type: string maxLength: 1 example: N enum: - y - n - Y - N - null siteCode: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 80 example: epsxx92qax1e2cz sourceSystemId: type: string pattern: ^[0-9]*$ transmissions: items: $ref: '#/components/schemas/JsonTransmission' type: array type: object GetClaimFormatResponse: properties: claimFormat: $ref: '#/components/schemas/JsonClaimFormat' type: object GetClaimFormatRequest: properties: billingSequence: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 2 example: S1 bin: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 6 example: A99 chainID: type: string pattern: ^[0-9]*$ maxLength: 38 code: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 3 example: DG6 customer: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 128 example: customerName externalMessageId: type: string pattern: ^[0-9]*$ groupCode: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 15 example: D0 pcn: type: string maxLength: 10 format: ncpdp-alphanumeric example: A987 rems: type: string maxLength: 1 example: N enum: - y - n - Y - N - null siteCode: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 80 example: epsxx92qax1e2cz sourceSystemId: type: string pattern: ^[0-9]*$ transactionCode: type: string type: object UpdateClaimFormatRequest: properties: claimFormat: $ref: '#/components/schemas/JsonClaimFormat' type: object SaveClaimFormatRequest: properties: claimFormat: $ref: '#/components/schemas/JsonClaimFormat' type: object JsonFieldGroup: properties: fieldGroupId: format: int64 type: integer fieldIdentifier: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 3 example: '123' fieldNumber: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 4 example: A1 groupCode: type: string maximumCount: type: string example: '10' type: object JsonSegment: properties: segmentFields: items: $ref: '#/components/schemas/JsonSegmentField' type: array segmentIdentifier: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 32 example: HEADER sequence: format: int32 type: integer example: '2' usageCode: type: string maxLength: 10 format: ncpdp-alphanumeric example: M type: object JsonSegmentField: properties: customName: type: string maxLength: 250 format: ncpdp-alphanumeric example: custom field name customProcessingCode: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 10 example: A1 description: type: string maxLength: 250 format: ncpdp-alphanumeric example: field description fieldDataType: type: string maxLength: 250 format: ncpdp-alphanumeric example: Integer fieldDataTypeId: format: int64 type: integer example: '1' fieldGroups: items: $ref: '#/components/schemas/JsonFieldGroup' type: array example: [] fieldIdentifier: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 3 example: A1 fieldNumber: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 4 example: '101' fieldType: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 1 example: I includeIfNull: type: boolean example: 'true' mantissaSize: format: int32 type: integer example: '1' maximumLength: format: int32 type: integer example: '10' segmentFieldQualifiers: items: $ref: '#/components/schemas/JsonSegmentFieldQualifier' type: array example: [] sequence: format: int32 type: integer example: '1' usageCode: type: string maxLength: 10 format: ncpdp-alphanumeric example: M useIfNull: type: string maxLength: 250 format: ncpdp-alphanumeric example: ' ' type: object JsonTransmission: properties: code: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 10 example: B1 segments: items: $ref: '#/components/schemas/JsonSegment' type: array standard: type: string maxLength: 2 example: D0 enum: - D0 - '' type: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 50 example: request type: object JsonSegmentFieldQualifier: properties: qualifierCode: type: string pattern: ^[a-zA-Z0-9]*$ maxLength: 10 qualifierDescription: type: string maxLength: 250 sequence: format: int32 type: integer type: object securitySchemes: oauth2_security: flows: clientCredentials: scopes: {} tokenUrl: https://idx-stage.linkhealth.com/auth/realms/developer-platform/protocol/openid-connect/token type: oauth2 externalDocs: description: Resource Docs url: https://springdoc.org/ x-readme: explorer-enabled: true proxy-enabled: true