majesco Claims API

Claims intake and management

OpenAPI Specification

majesco-claims-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Majesco Insurance Policy Administration Billing Claims API
  description: Majesco cloud-based insurance platform API for policy administration, claims management, billing, and distribution. Supports P&C, L&A, and specialty lines with REST interfaces for digital insurance operations.
  version: 1.0.0
  contact:
    name: Majesco Support
    url: https://www.majesco.com/contact/
  license:
    name: Proprietary
    url: https://www.majesco.com/terms
servers:
- url: https://api.majesco.example.com/v1
  description: Majesco API (customer-specific tenant URL)
security:
- OAuth2:
  - read
  - write
tags:
- name: Claims
  description: Claims intake and management
paths:
  /claims:
    get:
      operationId: listClaims
      summary: List claims
      description: Retrieve a paginated list of claims with optional filters.
      tags:
      - Claims
      parameters:
      - name: status
        in: query
        schema:
          type: string
          enum:
          - open
          - in_review
          - pending_payment
          - closed
          - denied
      - name: policyNumber
        in: query
        schema:
          type: string
      - name: claimDateFrom
        in: query
        schema:
          type: string
          format: date
      - name: pageSize
        in: query
        schema:
          type: integer
          default: 50
      responses:
        '200':
          description: Paginated list of claims
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClaimListResponse'
    post:
      operationId: createClaim
      summary: Create a new claim
      description: Submit a first notice of loss (FNOL) for a policy.
      tags:
      - Claims
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClaimCreateRequest'
      responses:
        '201':
          description: Claim created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Claim'
  /claims/{claimNumber}:
    get:
      operationId: getClaim
      summary: Get claim details
      description: Retrieve full details of a claim including loss details, coverage, reserves, and payment history.
      tags:
      - Claims
      parameters:
      - name: claimNumber
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Claim details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Claim'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    ClaimCreateRequest:
      type: object
      required:
      - policyNumber
      - lossDate
      - lossType
      properties:
        policyNumber:
          type: string
        lossDate:
          type: string
          format: date
        lossType:
          type: string
        lossDescription:
          type: string
        claimantId:
          type: string
        contactPhone:
          type: string
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        requestId:
          type: string
    ClaimListResponse:
      type: object
      properties:
        claims:
          type: array
          items:
            $ref: '#/components/schemas/Claim'
        totalCount:
          type: integer
        nextPageToken:
          type: string
    Address:
      type: object
      properties:
        street1:
          type: string
        street2:
          type: string
        city:
          type: string
        state:
          type: string
          description: Two-letter US state code
          pattern: ^[A-Z]{2}$
        postalCode:
          type: string
        country:
          type: string
          default: US
    Policyholder:
      type: object
      required:
      - firstName
      - lastName
      properties:
        id:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        dateOfBirth:
          type: string
          format: date
        email:
          type: string
          format: email
        phone:
          type: string
        address:
          $ref: '#/components/schemas/Address'
    Claim:
      type: object
      properties:
        claimNumber:
          type: string
        policyNumber:
          type: string
        status:
          type: string
          enum:
          - open
          - in_review
          - pending_payment
          - closed
          - denied
        lossDate:
          type: string
          format: date
        reportedDate:
          type: string
          format: date
        lossType:
          type: string
        lossDescription:
          type: string
        claimant:
          $ref: '#/components/schemas/Policyholder'
        coveragesInvolved:
          type: array
          items:
            type: string
        totalReserved:
          type: number
        totalPaid:
          type: number
        adjusterName:
          type: string
        createdAt:
          type: string
          format: date-time
  responses:
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.majesco.example.com/oauth2/token
          scopes:
            read: Read access to policies, claims, and billing
            write: Write access for policy and claim operations
externalDocs:
  description: Majesco Developer Portal
  url: https://www.majesco.com/