Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Awesome api app render macro
authHeaderName
linksColor#0052cc
showInfotrue
allowSpecUrlLoadfalse
primaryColor#0052CC
schemaStyletable
methodGetColor#0065FF
authHeaderValue
methodPutColor#6554c0
generalThemeconfluence_light
allowTryfalse
layoutHeight800
allowAdvancedSearchtrue
codeBg#F4F5F7
methodHeadColor#ffab00
navHoverTextColor
showComponentstrue
allowServerSelectiontrue
textColor#172B4D
methodPatchColor#ffab00
navBgColor#FAFBFC
codeFg#172B4D
navTextColor#172B4D
fontSizedefault
sortEndpointsBymethod
usePathInNavBartrue
navAccentColor#6554C0
methodDeleteColor#ff5630
headerColor#fff
allowAuthenticationfalse
bgColor#fff
allowSearchtrue
sortTagstrue
themelight
methodPostColor#36b37e
authTypeNone
inlineCodeFg#6554C0
resourceContentTypejson
showHeaderfalse
allowSpecFileLoadfalse
inlineCodeBg#F4F5F7
renderStyleread
layoutcolumn
headingText
navItemSpacingdefault
infoDescriptionHeadingsInNavbartrue
specUrl
navHoverBgColor
resourceTypeCONTENT
openapi: 3.0.1

info:
  title: Ozone Connect - Health InsuranceCheck APIs
   contact:
    name: Ozone Financial Technology Limited
   description: |
    This document provides the OAS3 specification for InsuranceHealth Check APIs for Ozone Connect.

    These APIs should be implemented by aan Financialfinancial Institutioninstitution so that Ozone
    can exposeensure thesethat end-points to TPPs.

    #### Changes in Release 2024.34
    Marked o3-caller-org-id, o3-caller-client-id, o3-caller-software-statement-id, o3-consent-id, o3-caller-interaction-id and o3-psu-identifier headers mandatory.

  version: Release 2024.34

tags:
  - name: Insurance Policies
    description: |
      APIs that should be implemented by Financial Institutions to expose `Insurance` information to TPPs.the institution's Ozone Connect implementation is up and running.

    #### Document Structure
    The documentation contains a number of references of the form `XXX-999-999`. These are references
    to test case numbers in the Ozone Connect Test Harness that financial institutions may use to test their Ozone Connect implementations.

  version: Release 2024.34

servers:
  - url: https://<your-ozone-connect-server>


pathstags:
  /insurance-policies: name: health-check
    getdescription: |
     tags: APIs that should be implemented by Financial Instituations -to Insuranceexpose Policieshealth check end-points

paths:
  operationId/hello:
InsurancePolicies_list       summaryget:
Get insurance policies       descriptionoperationId: |hello
      summary: check Thisconnectivity operationwithout retrieves a listmutual oftls insurancecheck
policies for a given consent  tags:
    parameters:    - health-check
   # common header parametersdescription:
that set context      Check connectivity without -a $ref: "#/components/parameters/providerId"
mutual tls CheckDetails.

      - $ref: "#/components/parameters/aspspId"
        - $ref: "#/components/parameters/callerOrgId"
        - $ref: "#/components/parameters/callerClientId"
        - $ref: "#/components/parameters/callerSoftwareStatementId"
        - $ref: "#/components/parameters/apiUri"
        - $ref: "#/components/parameters/apiOperation"
        - $ref: "#/components/parameters/consentId"
        - $ref: "#/components/parameters/callerInteractionId"
        - $ref: "#/components/parameters/ozoneInteractionId"
        - $ref: "#/components/parameters/psuIdentifier"

        # Query params
        - $ref: "#/components/parameters/page"
        - $ref: "#/components/parameters/page-size"

      responses:
        '200':
          $ref: "#/components/responses/InsurancePoliciesGetResponse"
        '400':
          description: |
            The operation __must__ be failed with a status of `400` under the following error conditions:
            The `o3-aspsp-id` header is missing or has an unexpected value
            The operation __should__ be failed with a status of `400` under the following error conditions:
            The ASPSP should fail the call if the `o3-psu-identifier` header is not specified.
            The operation __may__ be failed with a status of `400` under the following error conditions:
            One or more of the mandatory header parameters is not specified or has an unexpected value
              - `o3-api-uri`,
              - `o3-api-operation`,
              - `o3-ozone-interaction-id`
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
        '401':
          description: |
            The operation __must__ be failed with a status of `401` under the following error conditions:
            The API consumer is not authorised.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"

  /insurance-policies/{InsurancePolicyId}:
    get:
      tags:
        - Insurance Policies
      operationId: InsurancePoliciesById_read
      summary: Get insurance policy
      description: |
        This operation retrieves a single insurance policy for a given consent
      parameters:
        # common header parameters that set context
        - $ref: "#/components/parameters/providerId"
        - $ref: "#/components/parameters/aspspId"
        - $ref: "#/components/parameters/callerOrgId"
        - $ref: "#/components/parameters/callerClientId"
        - $ref: "#/components/parameters/callerSoftwareStatementId"
        - $ref: "#/components/parameters/apiUri"
        - $ref: "#/components/parameters/apiOperation"
        - $ref: "#/components/parameters/consentId"
        - $ref: "#/components/parameters/callerInteractionId"
        - $ref: "#/components/parameters/ozoneInteractionId"
        - $ref: "#/components/parameters/psuIdentifier"
        - $ref: '#/components/parameters/InsurancePolicyId'

      responses:
        '200':
          $ref: "#/components/responses/InsurancePolicyGetResponse"
        '400':
          description: |
            The operation __must__ be failed with a status of `400` under the following error conditions:
            The `o3-aspsp-id` header is missing or has an unexpected value
            The operation __should__ be failed with a status of `400` under the following error conditions:
            The ASPSP should fail the call if the `o3-psu-identifier` header is not specified.
            The operation __may__ be failed with a status of `400` under the following error conditions:
            One or more of the mandatory header parameters is not specified or has an unexpected value
              - `o3-api-uri`,
              - `o3-api-operation`,
              - `o3-ozone-interaction-id`
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
        '401':
          description: |
            The operation __must__ be failed with a status of `401` under the following error conditions:
            The API consumer is not authorised.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"

components:
  schemas:

    InsurancePolicyGetResponseBody:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/AEInsurancePolicyTypes'
        meta:
          $ref: "#/components/schemas/Meta"

    InsurancePoliciesGetResponseBody:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/AEInsurancePolicyTypes'
        meta:
          $ref: "#/components/schemas/Meta"

    AEInsurancePolicyTypes:
      $ref: '#/components/schemas/AEMotorInsurancePolicy'

    AEMotorInsurancePolicy:
      type: object
      required:
        - InsurancePolicyId
        - PolicyType
        - Customer
      properties:
        InsurancePolicyId:
          allOf:
            - $ref: '#/components/schemas/uuid'
          description: Unique identifier for a given insurance policy
        PolicyType:
          type: string
          enum:
            - Motor
        Customer:
          $ref: '#/components/schemas/AEMotorInsuranceCustomer'
        Product:
          $ref: '#/components/schemas/AEMotorInsuranceProduct'
        Transactions:
          $ref: '#/components/schemas/AEMotorInsuranceTransactions'
      additionalProperties: false

    AEMotorInsuranceCustomer:
      type: object
      required:
        - CustomerId
        - FullName
        - PrimaryLanguage
      properties:
        CustomerId:
          type: string
          description: >-
            Identifier that uniquely and consistently identifies the insurance
            policy customer
        FullName:
          type: string
          description: Full name of the insurance policy customer
        ShortName:
          type: string
          description: Short name of the insurance policy customer
        CategorySegment:
          type: string
          description: Customer category or segment, as defined by the insurance company
        LocalBranch:
          type: string
          description: Local branch, as defined by the insurance company
        PrimaryLanguage:
          $ref: '#/components/schemas/AECustomerPrimaryLanguage'
        BillingAddress:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceAddress'
          description: Customer billing address
        PermanentAddress:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceAddress'
          description: Customer permanent address
        ResidentialAddress:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceAddress'
          description: Customer residential address
        CommunicationPreferences:
          type: array
          items:
            $ref: '#/components/schemas/AEInsuranceCommunicationPreferences'
          minItems: 1
          maxItems: 3
          description: Customer phone communication preferences, in prefer order
        BackgroundInformation:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCustomerBackgroundInformation'
          description: Customer background information
        EmploymentInformation:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCustomerEmploymentDetails'
          description: Customer employment details
        IdentityInformation:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceIdentificationDetails'
          description: Customer identification information
        EmergencyContacts:
          type: array
          items:
            type: string
          description: Customer emergency contacts, in prefer order
      additionalProperties: false

    AEMotorInsuranceProduct:
      type: object
      required:
        - InsuredVehicle
        - Policy
      properties:
        InsuredVehicle:
          $ref: '#/components/schemas/AEMotorInsuranceVehicle'
        Policy:
          $ref: '#/components/schemas/AEMotorInsurancePolicyProperties'
      additionalProperties: false

    AEMotorInsuranceTransactions:
      type: object
      required:
        - PolicyPremiumValue
        - PolicyPremiumPaymentPeriod
        - OutstandingPremiumBalance
      properties:
        PolicyPremiumValue:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Policy premium value
        PolicyPremiumPaymentPeriod:
          type: string
          minLength: 1
          maxLength: 35
          description: Policy premium payment period as defined by the insurer
        OutstandingPremiumBalance:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Outstanding premium balance
        TwelveMonthClaimSummary:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceClaimSummary'
          description: Summary of claims in last twelve months
        ThirtySixMonthClaimSummary:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceClaimSummary'
          description: Summary of claims in last thirty-six months
        Loan:
          allOf:
            - $ref: '#/components/schemas/AEMotorInsuranceLoanDetails'
          description: Loan details
        BenefitPayouts:
          type: array
          items:
            $ref: '#/components/schemas/AEMotorInsuranceBenefitPayout'
          description: Benefit payout details
        Claims:
          type: array
          items:
            $ref: '#/components/schemas/AEInsuranceClaimDetails'
          minItems: 1
          maxItems: 3
          description: >-
            Indivdual claim details, maximim of three claims returned in
            response. Omit if no claims made
        PreviousPolicies:
          type: array
          items:
            $ref: '#/components/schemas/AEMotorInsurancePreviousPolicyDetails'
          minItems: 1
          maxItems: 2
          description: Previous policy details
      description: Insurance transaction information
      additionalProperties: false

    AEMotorInsuranceVehicle:
      type: object
      properties:
        Make:
          type: string
          minLength: 1
          maxLength: 70
          description: Vehicle make
        Model:
          type: string
          minLength: 1
          maxLength: 140
          description: Vehicle model
        ModelYear:
          type: string
          pattern: ^[0-9]{4}$
          description: Vehicle model year
        PurchaseDate:
          type: string
          format: date
          description: Vehicle purchase date
        Specification:
          type: string
          minLength: 1
          maxLength: 140
          description: Vehicle specification
        EstimatedValue:
          type: integer
          format: int32
          description: Vehicle estimated value
        RegistrationDate:
          type: string
          format: date
          description: Vehicle registration date
        VehicleIdentificationNumber:
          type: string
          minLength: 1
          maxLength: 35
          description: Vehicle Identification Number (VIN or chassis number)
        EngineNumber:
          type: string
          description: Vehicle engine number
        CountryofOrigin:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCountryCode'
          description: Vehicle registration country based on ISO 3166-1 alpha-2 code
        Color:
          type: string
          description: Vehicle color
        PlateNumber:
          type: string
          minLength: 1
          maxLength: 16
          description: Vehicle plate number
        PlateCode:
          type: string
          minLength: 1
          maxLength: 16
          description: Vehicle plate code
        VehicleMileage:
          type: integer
          format: int64
          description: Vehicle mileage to nearest kilometer
        VehicleWeight:
          type: integer
          format: int64
          description: Vehicle weight to nearest kilograms
        TrafficCodeIssuingEmirate:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceEmirate'
          description: Emirate that issued the traffic code for the vehicle
        TrafficIdentificationNumber:
          type: string
          minLength: 1
          maxLength: 35
          description: Traffic identification number
        VehicleHistory:
          allOf:
            - $ref: '#/components/schemas/VehicleHistory'
          description: Indicator of vehicle history
        FirstTimeRegistration:
          type: boolean
          description: First time vehicle was registered
        VehicleFinance:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Vehicle finance amount and currency
      additionalProperties: false

    AEMotorInsurancePolicyProperties:
      type: object
      required:
        - PolicyReference
        - IssueDateTime
        - ExpiryDateTime
        - CoverageType
        - PolicyLimits
        - PolicyExclusions
        - CoverageAmount
        - CoverageStartDate
        - CoverageEndDate
      properties:
        PolicyReference:
          $ref: '#/components/schemas/PolicyReference'
        IssueDateTime:
          type: string
          format: date
          description: Date when the policy was issued
        ExpiryDateTime:
          type: string
          format: date
          description: Date when the policy expires
        CoverageType:
          type: string
          minLength: 1
          maxLength: 170
          description: Freeform text that describes coverage as specified by the insurer
        PolicyLimits:
          type: string
          minLength: 1
          maxLength: 350
          description: Policy limits as free form text
        PolicyExclusions:
          type: string
          minLength: 1
          maxLength: 350
          description: Policy exclusions as free form text
        CoverageAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Coverage amount and currency
        CoverageStartDate:
          type: string
          format: date
          description: Date when the coverage starts
        CoverageEndDate:
          type: string
          format: date
          description: Date when the coverage ends
        PreviousPolicyInformation:
          allOf:
            - $ref: '#/components/schemas/AEMotorInsurancePreviousPolicy'
          description: Details of previous policy held by the insurer
        DriversPersonalAccidentIncluded:
          type: boolean
          description: >-
            Indicates whether the policy includes personal accident coverage for
            the driver
        PassengersPersonalAccidentIncluded:
          type: boolean
          description: >-
            Indicates whether the policy includes personal accident coverage for
            the passengers
      additionalProperties: false

    AEAmountAndCurrency:
      type: object
      required:
        - Currency
        - Amount
      properties:
        Currency:
          $ref: '#/components/schemas/CurrencyCode'
        Amount:
          $ref: '#/components/schemas/Amount'
      description: >-
        The Currency and Amount relating to the Payment, Refund or Request to
        Pay
      additionalProperties: false

    AEInsuranceClaimSummary:
      type: object
      required:
        - NumberClaims
      properties:
        NumberClaims:
          type: integer
          format: int64
          description: Number of claims in period
        NumberApprovedClaims:
          type: integer
          format: int64
          description: Number of approved claims in period
        TotalClaimsAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Total amount of claims in period
        TotalApprovedClaimsAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Total amount of approved claims in period
      additionalProperties: false

    AEMotorInsuranceLoanDetails:
      type: object
      required:
        - LoanAmount
        - LoanStartDate
        - LoanInterestRate
        - RepaymentSchedule
        - OutstandingLoanBalance
      properties:
        LoanAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Loan amount and currency
        LoanStartDate:
          type: string
          format: date
          description: Loan start date
        LoanInterestRate:
          type: number
          description: Loan interest rate
        RepaymentSchedule:
          type: string
          minLength: 1
          maxLength: 16
          description: Repayment frequency
        OutstandingLoanBalance:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Outstanding loan balance
      description: Loan details
      additionalProperties: false

    AEMotorInsuranceBenefitPayout:
      type: object
      required:
        - Amount
        - Date
      properties:
        Amount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Benefit payout amount and currency
        Date:
          type: string
          format: date
          description: Benefit payout date
      description: Benefit payout
      additionalProperties: false

    AEInsuranceClaimDetails:
      type: object
      required:
        - ClaimDate
        - Description
        - Status
        - ClaimAmount
      properties:
        ClaimDate:
          type: string
          format: date
          description: Date on which claim submitted
        Description:
          type: string
          minLength: 1
          maxLength: 140
          description: Claim description
        Status:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceClaimStatus'
          description: Claim status
        ClaimAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Claim amount and currency
        DeductibleAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Deductible amount and currency
      description: Individual claim detail
      additionalProperties: false

    AEMotorInsurancePreviousPolicyDetails:
      type: object
      required:
        - InsuranceCompanyName
        - PolicyReference
        - PurchaseDate
        - minItems
        - maxItems
        - CoverageType
      properties:
        InsuranceCompanyName:
          type: string
          minLength: 1
          maxLength: 140
          description: Previous insurer
        PolicyReference:
          type: string
          minLength: 1
          maxLength: 70
          description: Previous policy reference
        PurchaseDate:
          type: string
          format: date
          description: Previous policy start date
        minItems:
          type: number
          enum:
            - 1
          description: Previous policy renewal dates, up to two renewals
        maxItems:
          type: number
          enum:
            - 2
        RenewalDate:
          type: array
          items:
            type: string
            format: date
        DeductibleAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Deductible amount and currency
        CoverageType:
          type: string
          minLength: 1
          maxLength: 35
          description: Policy coverage type
        Adjustments:
          type: array
          items:
            $ref: '#/components/schemas/AEMotorInsurancePolicyAdjustments'
          minItems: 1
          maxItems: 2
          description: >-
            Policy adjustments recorded on the policy. Omit if no adjustments
            made
        Loan:
          allOf:
            - $ref: '#/components/schemas/AEMotorInsuranceLoanDetails'
          description: Loan details
        BenefitPayouts:
          type: array
          items:
            $ref: '#/components/schemas/AEMotorInsuranceBenefitPayout'
          description: Benefit payout details
        TerminationDate:
          type: string
          format: date
          description: Policy termination date
        ReasonforCancellation:
          type: string
          minLength: 1
          maxLength: 140
          description: Reason for policy termination
        RefundAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Refund amount and currency
        SurrenderDate:
          type: string
          format: date
          description: Surrender date
        SurrenderAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Surrender amount and currency
        ReasonforSurrender:
          type: string
          description: Reason for surrender
        CashValueofPolicyPaidtoPolicyholder:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Cash value of policy paid to policyholder
      description: Previous policy details
      additionalProperties: false

    AEInsuranceCountryCode:
      type: string
      pattern: '[A-Z]{2}'

    AEInsuranceEmirate:
      type: string
      enum:
        - AbuDhabi
        - Ajman
        - Dubai
        - Fujairah
        - RasAlKhaimah
        - Sharjah
        - UmmAlQuwain

    VehicleHistory:
      type: string
      enum:
        - Imported
        - Modified
        - DeclaredTotalLoss
        - Other

    PolicyReference:
      type: string
      description: Insurance policy identifier issued by the insurer

    AEMotorInsurancePreviousPolicy:
      type: object
      required:
        - Insurer
        - PolicyStartDate
        - PolicyExpiryDate
      properties:
        Insurer:
          type: string
          description: Previous issuer
        PolicyStartDate:
          type: string
          format: date
          description: Previous policy start date
        PolicyExpiryDate:
          type: string
          format: date
          description: Previous policy expiry date
        PreviousClaims:
          type: array
          items:
            $ref: '#/components/schemas/PreviousClaims'
          description: >-
            Claims on previous policy. If there are no claims on the policy then
            this property is not required
      additionalProperties: false

    AEInsuranceAddress:
      type: object
      required:
        - AddressLine
        - PostCode
        - TownName
        - CountrySubDivision
        - Country
      properties:
        AddressLine:
          type: array
          items:
            $ref: '#/components/schemas/AEInsuranceAddressLine'
          minItems: 1
          maxItems: 3
          description: Address line in free format text
        PostCode:
          type: string
          minLength: 1
          maxLength: 16
          description: Postal code
        TownName:
          type: string
          minLength: 1
          maxLength: 140
          description: Name of a built-up area, such as a town or city
        CountrySubDivision:
          type: string
          minLength: 1
          maxLength: 35
          description: Country subdivision, such as state or province
        Country:
          type: string
          pattern: '[A-Z]{2}'
          description: Country based on ISO 3166-1 alpha-2 code
      description: Address information based on ISO 20022
      additionalProperties: false

    AEInsuranceCommunicationPreferences:
      type: object
      required:
        - Type
        - PhoneNumber
      properties:
        Type:
          $ref: '#/components/schemas/AEInsuranceCommunicationPreferenceTypes'
        PhoneNumber:
          $ref: '#/components/schemas/AEInsuranceMobileNumber'
      additionalProperties: false

    AEInsuranceCommunicationPreferenceTypes:
      type: string
      enum:
        - Home
        - Mobile
        - Other
      description: Phone communication preference types

    AEInsuranceMobileNumber:
      type: string


    AEInsuranceAddressLine:
      type: string
      minLength: 1
      maxLength: 70

    AECustomerPrimaryLanguage:
      type: string
      enum:
        - English
        - Arabic
        - Other
      description: Primary language spoken by the insurance policy customer

    AEInsuranceCustomerBackgroundInformation:
      type: object
      required:
        - Gender
        - DateOfBirth
        - MaritalStatus
        - Nationality
        - Salutation
      properties:
        Gender:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceGender'
          description: Gender
        DateOfBirth:
          type: string
          format: date
          description: Date of birth
        MaritalStatus:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceMartitalStatus'
          description: Martial status
        EducationBackground:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceEducationBackground'
          description: Education background
        Nationality:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCountryCode'
          description: Nationality, based on ISO 3166-1 alpha-2 code
        SecondNationality:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCountryCode'
          description: >-
            Second nationality, based on ISO 3166-1 alpha-2 code. Presence of
            second nationality indicates customer is dual national
        Salutation:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceSalutation'
          description: Customer salutation
        CountryOfBirth:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCountryCode'
          description: Country of birth
        PlaceOfBirth:
          type: string
          minLength: 1
          maxLength: 140
          description: Place of birth
        Religion:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceReligion'
          description: Religion
        MotherMaidenName:
          type: string
          minLength: 1
          maxLength: 140
          description: Mother's maiden name
        SpouseName:
          type: string
          minLength: 1
          maxLength: 140
          description: Spouse name
        SpouseDateOfBirth:
          type: string
          format: date
          description: Spouse date of birth
        SpouseEmploymentDetails:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceEmploymentStatus'
          description: Spouse employment details
        SpousePhoneNumber:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceMobileNumber'
          description: Spouse phone number
        NumberOfDependents:
          type: integer
          format: int64
          description: Number of dependents
      additionalProperties: false

    AEInsuranceCustomerEmploymentDetails:
      type: object
      properties:
        Profession:
          type: string
          minLength: 1
          maxLength: 70
          description: Profession
        ProfessionDescription:
          type: string
          minLength: 1
          maxLength: 140
          description: Profession description
        EmployerName:
          type: string
          minLength: 1
          maxLength: 70
          description: Employer name
        EmployerAddress:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceAddress'
          description: Employer address
        EmploymentStatus:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceEmploymentStatus'
          description: Employment status
        EmploymentStartDate:
          type: string
          format: date
          description: Employment start date
        EmploymentLocation:
          type: string
          minLength: 1
          maxLength: 70
          description: Employment location
        NatureOfEmployerBusiness:
          type: string
          minLength: 1
          maxLength: 140
          description: Nature of employer business
        Designation:
          type: string
        SourceOfIncome:
          type: string
          minLength: 1
          maxLength: 70
          description: Source of income as a free form description
        IncomeCurrency:
          type: string
          pattern: '[A-Z]{3}'
          description: Income currency
        MonthlyIncome:
          type: number
          format: decimal
          description: Monthly income in AED
        AnnualIncome:
          type: number
          format: decimal
          description: Annual income in AED
      additionalProperties: false

    AEInsuranceIdentificationDetails:
      type: object
      properties:
        EidNumber:
          type: string
          pattern: ^784-?[0-9]{4}-?[0-9]{7}-?[0-9]{1}$
          description: Emirates identification number
        EidExpiryDate:
          type: string
          format: date
          description: Emirates ID expiry date
        PassportIssueCountry:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCountryCode'
          pattern: ^[A-Z]{2,2}$
          description: Passport issuing country code
        PassportNumber:
          type: string
          pattern: ^[A-Z0-9]+$
          description: Passport number
        PassportIssueDate:
          type: string
          format: date
          description: Passport issue date
        PassportExpiryDate:
          type: string
          format: date
          description: Passport expiry date
        VisaNumber:
          type: string
          pattern: ^[0-9]+$
          description: Visa number
        VisaIssueCountry:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceCountryCode'
          pattern: ^[A-Z]{2,2}$
          description: Visa issuing country code
        VisaIssueDate:
          type: string
          format: date
          description: Visa issue date
        VisaExpiryDate:
          type: string
          format: date
          description: Visa expiry date
        UaeDrivingLicenseNumber:
          type: string
          description: UAE driving license number
        UaeDrivingLicenseIssueDate:
          type: string
          format: date
          description: UAE driving license issue date
        UAEDrivingLicenseIssuingEmirate:
          allOf:
            - $ref: '#/components/schemas/AEInsuranceEmirate'
          description: Emirate where driving license was issued
        MulkiyaCard:
          type: string
          format: base64
          description: Mulkiya card as a Base64-encoded PDF document
        HomeCountryDrivingLicenseNumber:
          type: string
          minLength: 1
          maxLength: 70
          description: Home driving license number
      additionalProperties: false

    PreviousClaims:
      type: object
      required:
        - ClaimDescription
      properties:
        ClaimAmount:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Claim amount and currency
        ClaimDescription:
          type: string
          minLength: 1
          maxLength: 140
          description: Description of claim using free form text
      additionalProperties: false

    AEInsuranceEducationBackground:
      type: string
      enum:
        - HighSchool
        - Undergraduate
        - Postgraduate
        - Doctorate
        - Other

    AEInsuranceReligion:
      type: string
      enum:
        - Christian
        - Muslim
        - Jewish
        - Hindu
        - Buddhist
        - Other

    AEInsuranceSalutation:
      type: string
      enum:
        - Mr
        - Mrs
        - Ms
        - Miss
        - Dr
        - Prof
        - Other

    AEInsuranceEmploymentStatus:
      type: string
      enum:
        - Employed
        - SelfEmployed
        - Unemployed
        - Retired
        - Other

    Amount:
      type: number

    CurrencyCode:
      type: string
      pattern: ^[A-Z]{3}$

    AEInsuranceClaimStatus:
      type: string
      enum:
        - Submitted
        - Authorized
        - Rejected
        - Pending
        - Completed

    AEMotorInsurancePolicyAdjustments:
      type: object
      required:
        - Date
      properties:
        Date:
          type: string
          format: date
          description: Date of adjustment
        PremiumAdjustment:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Premium adjustment amount and currency
        CoverageAdjustment:
          allOf:
            - $ref: '#/components/schemas/AEAmountAndCurrency'
          description: Coverage adjustment amount and currency
        Reason:
          type: string
          minLength: 1
          maxLength: 140
          description: Reason for adjustment
      description: Policy adjustments
      additionalProperties: false

    AEInsuranceGender:
      type: string
      enum:
        - Male
        - Female
        - Other

    AEInsuranceMartitalStatus:
      type: string
      enum:
        - Single
        - Married
        - Divorced
        - Widowed
        - Separated
        - Other

    uuid:
      type: string
      minLength: 1
      maxLength: 128

    Meta:
      type: object
      required:
        - totalPages
      properties:
        totalPages:
          type: integer
          description: Total number of pages where a result set is paginated
          example: 1
      additionalProperties: false

    Error:
      type: object
      properties:
        errorCode:
          type: string
          description: Error code identifying the problem occured
        errorMessage:
          type: string
          description: Message describing what problem has occured
        propagateError This health check is used to check that the end-to-end network connectivity is working as expected. This is a simple health check that does not require mutual TLS.
      responses:
        '200':
          typedescription: booleanOK
          descriptioncontent:
optional field if error want to propagate    parameters:     providerIdapplication/json:
      name: o3-provider-id       inschema:
header       schema:         type$ref: string'#/components/schemas/HealthCheck200Response'

     required: true
/hello-mtls:
     descriptionget:
Identifier for the ASPSP that the requestoperationId: ishelloMtls
targetted to      callerOrgIdsummary: check connectivity including mtls
  name: o3-caller-org-id   tags:
   in: header    - health-check
 schema:     description:
   type: string    Check connectivity including required:mutual trueTLS CheckDetails.

    description: An identifier for theThis organizationhealth callingcheck theis APIused to check that the  callerClientId:
      name: o3-caller-client-idend-to-end network connectivity is working as expected including mutual tls.
      inresponses:
 header       schema'200':
        type: string description: OK
    required: true       description: An identifier for the OIDC clientId calling the APIcontent:
            callerSoftwareStatementIdapplication/json:
      name: o3-caller-software-statement-id       inschema:
header       schema:         type$ref: string'#/components/schemas/HealthCheck200Response'

     required: true  '401':
    description: An identifier for the software statementdescription: callingReturned thewhen APImtls connection could not be established
apiUri:       name: o3-api-uri  content:
    in: header       schemaapplication/json:
        type: string     schema:
 required: true       description: The parameterised URL of the API being called by the caller
$ref: '#/components/schemas/HealthCheck4xxResponse'

  /echo-cert:
    apiOperationget:
      nameoperationId: o3-api-operationechoCert
      intags:
header       schema: - health-check
      typesummary: Provides stringinformation about the client cert that the required:server truereceived
      description:
The API operation carried out by the caller (e.g. GET, POST, PUT, DELETE, PATCH)

    consentId:
This health check endpoint assists in debugging mutual tls client issues.

    name: o3-consent-id   The health check returns in:information headerabout the client certificate and the issuer schema:of the client certificate that the server received.

type: string       required:Where truemtls cannot be established, the server will description:return Thea consentId401 forresponse.
which this call is being made responses:
    callerInteractionId:    '200':
  name: o3-caller-interaction-id       indescription: headerOK
       schema:   content:
     type: string      application/json:
required: true       description: The interaction ID passed in byschema:
the caller, if any      ozoneInteractionId:       name: o3-ozone-interaction-id$ref: '#/components/schemas/HealthCheckCertResponse'

     in: header  '401':
    schema:      description: Returned when type:mtls stringconnection could not be established
  required: true       descriptioncontent:
An interaction ID generated by Ozone if the caller did not send in one. If the callerInteractionId is specified, this takes the same value. application/json:
              psuIdentifierschema:
      name: o3-psu-identifier          in$ref: header
'#/components/schemas/HealthCheck4xxResponse'

components:
  schemas:
  schema:  HealthCheck200Response:
      type: stringobject
      requireddescription:
true       description: ASuccesful Base64response encodedon representationa ofhealth thecheck
psuIdentifier JSON object.    properties:
 aspspId:       nameconnectionEstablished: o3-aspsp-id
          intype: headerboolean

        schemamtlsStatus:
          type: string
      required: true    enum:
            - deprecated:established
true       description:     - not-established
  Identifier for the financial institution that the request is targetted to.- not-checked

      This header is deprecatedhostName:
and will be removed in a future version of Ozone Connect.type: Usestring
`o3-provider-id`
instead.      pagerequired:

     name: page  - connectionEstablished
   in: query    - mtlsStatus
 description: Page of results to request (standard pagination)- hostName

    requiredHealthCheck4xxResponse:
false       schematype: object
       defaultdescription:
1        Response type:when integerconnection could not be established
  style: form   properties:
  page-size:       nameerrorMessage:
 page-size         intype: string
query
      descriptionrequired:
Page size to request. Default is 25 (standard pagination)- errorMessage

    requiredHealthCheckCertResponse:
false       schemaproperties:
        defaultconnectionEstablished:
25          type: integerboolean

     style: form  mtlsStatus:
   InsurancePolicyId:       nametype: InsurancePolicyIdstring
      in: path   enum:
   required: true       description: Unique- identifierestablished
for a given insurance policy       schema: -  not-established

    $ref: '#/components/schemas/uuid'    responseshostName:
     InsurancePoliciesGetResponse:       descriptiontype: Thestring
request
has succeeded.       headersclientCertificate:
         x-fapi-interaction-id: type: object
          schemaproperties:
            typesubject:
string       content:         application/jsontype: string

        schema:    issuer:
        $ref: "#/components/schemas/InsurancePoliciesGetResponseBody"      InsurancePolicyGetResponsetype:   string
   description: The request has succeeded.   required:
   headers:         x-fapi-interaction-id: subject
         schema:   - issuer

       typerequired: string
      content:  - connectionEstablished
     application/json:   - mtlsStatus
      schema:  - hostName
        - $ref: "#/components/schemas/InsurancePolicyGetResponseBody"clientCertificate

2. Attachments

View file
namecbuae-ozone-connect-health-check.yaml

...