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
allowTrytrue
layoutHeight800
allowAdvancedSearchfalse
codeBg#F4F5F7
methodHeadColor#ffab00
navHoverTextColor
showComponentstrue
allowServerSelectiontrue
textColor#172B4D
methodPatchColor#ffab00
navBgColor#FAFBFC
codeFg#172B4D
navTextColor#172B4D
fontSizedefault
sortEndpointsBymethod
usePathInNavBarfalse
navAccentColor#6554C0
methodDeleteColor#ff5630
headerColor#fff
allowAuthenticationfalse
bgColor#fff
allowSearchfalse
sortTagstrue
themelight
methodPostColor#36b37e
authTypeNone
inlineCodeFg#6554C0
resourceContentTypejson
showHeaderfalse
allowSpecFileLoadfalse
inlineCodeBg#F4F5F7
renderStyleviewread
layoutrow
headingText
navItemSpacingdefault
infoDescriptionHeadingsInNavbartrue
specUrlhttps://openfinanceuae.atlassian.net/wiki/download/attachments/82411584/uae-insurance-openapi.yaml?api=v2
navHoverBgColor
resourceTypeCONTENT
openapi: 3.0.0
info:
  title: MotorUAE Insurance API
  description: '## UAE Open Finance Motor Insurance API Specification'
  version: v1.0-draft3
tags:
  - name: Insurance Consents
  - name: Insurance Policies
paths:
  /insurance-consents:
    get:
      tags:
        - Insurance Consents
      operationId: InsuranceConsents_list
      summary: Get: Retrieve  Insurance Consents by BaseConsentId
      description: Retrieve all Insurance Consents that are linked to a given BaseConsentId
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/x-customer-user-agent'
        - $ref: '#/components/parameters/CustomerUserAgentx-fapi-auth-date'
        - $ref: '#/components/parameters/FapiAuthDatex-fapi-customer-ip-address'
        - $ref: '#/components/parameters/FapiCustomerIpAddressx-fapi-interaction-id'
        - $ref: '#/components/parameters/FapiInterationIdBaseConsentId'
      responses:
        '200':
          description: The request has succeeded.
          headerscontent:
            x-fapi-interaction-idapplication/json; charset=utf-8:
              requiredschema:
false                description$ref: An RFC4122 UID used as a correlation id.'#/components/schemas/AEReadInsuranceConsents1'
              application/json:
      schema:         schema:
       type: string           content:
            application/json; charset=utf-8:
              schema:
                $ref: $ref: '#/components/schemas/OBReadConsents1AEReadInsuranceConsents1'
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadConsents1'
            application/jwt:
              schema:
                $ref: '#/components/schemas/OBReadConsents1AEReadInsuranceConsents1Signed'
        '400':
          description: Bad request
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                $refanyOf:
'#/components/schemas/OBErrorResponse'         '401':          - description$ref: Unauthorized'#/components/schemas/AEErrorResponse'
          headers:        -     $ref: '#/components/schemas/AEErrorSignedResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/jwt:
              schema:
                $ref: '#/components/schemas/AEErrorSignedResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                $refanyOf: '#/components/schemas/OBErrorResponse'
         security:         - TPPOAuth2Security$ref: '#/components/schemas/AEErrorResponse'
           -        - $ref: '#/components/schemas/AEErrorSignedResponse'
      security:
        - TPPOAuth2Security:
            - openid
            - insurance-access
  /insurance-consents/{ConsentId}:
    get:
      tags:
        - Insurance Consents
      operationId: InsuranceConsentsConsentsByIdInsuranceConsentsByConsentId_read
      summary: Retrieve Getan Insurance Consent
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/CustomerUserAgentx-customer-user-agent'
        - $ref: '#/components/parameters/FapiAuthDatex-fapi-auth-date'
        - $ref: '#/components/parameters/FapiCustomerIpAddressx-fapi-customer-ip-address'
        - $ref: '#/components/parameters/FapiInterationIdx-fapi-interaction-id'
        - $ref: '#/components/parameters/ConsentId'
      responses:
        '200':
          description: The request has succeeded.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBReadConsent1AEReadInsuranceConsent1'
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadConsent1AEReadInsuranceConsent1'
            application/jwt:
              schema:
                $ref: '#/components/schemas/OBReadConsent1AEReadInsuranceConsent1Signed'
        '400':
          description: Bad request
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
                  - $ref: '#/components/schemas/AEErrorSignedResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/jwt:
              schema:
                $ref: '#/components/schemas/AEErrorSignedResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
                  - $ref: '#/components/schemas/AEErrorSignedResponse'
      security:
        - TPPOAuth2Security:
            - openid
            - insurance-access
    patch:
      tags:
        - Insurance Consents
      operationId: InsuranceConsentsConsentsById_update >-
        InsuranceConsentsByConsentId_unsignedRequestBodyUpdate_InsuranceConsentsByConsentId_signedRequestBodyUpdate
      summary: PatchModify an Insurance Consent
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/CustomerUserAgent'x-customer-user-agent'
        - $ref: '#/components/parameters/FapiAuthDatex-fapi-auth-date'
        - $ref: '#/components/parameters/FapiCustomerIpAddressx-fapi-customer-ip-address'
        - $ref: '#/components/parameters/FapiInterationIdx-fapi-interaction-id'
        - $ref: '#/components/parameters/ConsentId'
      responses:
        '204':
          description: No content
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '400':
          description: Bad request
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
                  - $ref: '#/components/schemas/AEErrorSignedResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '404':  content:
        description: Not found  application/jwt:
        headers:      schema:
      x-fapi-interaction-id:          $ref: '#/components/schemas/AEErrorSignedResponse'
   required: true    '404':
          description: AnNot found
RFC4122 UID used as a correlation id.    headers:
          schema:  x-fapi-interaction-id:
              typerequired: stringtrue
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
       requestBody:           - required$ref: true'#/components/schemas/AEErrorSignedResponse'
      requestBody:
        content:
          application/json; charset=utf-8:
            schema:
              $ref: '#/components/schemas/OBUpdateConsent1AEUpdateConsent1'
          application/json:
            schema:
              $ref: '#/components/schemas/OBUpdateConsent1AEUpdateConsent1'
          application/jwt:
            schema:
              $ref: '#/components/schemas/OBUpdateConsent1AEUpdateConsent1Signed'
      security:
        - TPPOAuth2Security:
            - openid
            - insurance-access
  /insurance-policies:
    get:
      tags:
        - Insurance Policies
      operationId: InsurancePolicies_list
      summary: Get insurance policies
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/CustomerUserAgentx-customer-user-agent'
        - $ref: '#/components/parameters/FapiAuthDatex-fapi-auth-date'
        - $ref: '#/components/parameters/FapiCustomerIpAddressx-fapi-customer-ip-address'
        - $ref: '#/components/parameters/FapiInterationId'x-fapi-interaction-id'
      responses:
        '200':
          description: The request has succeeded.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBReadPolicies1AEReadInsurancePolicies1'
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadPolicies1AEReadInsurancePolicies1'
            application/jwt:
              schema:
                $ref: '#/components/schemas/OBReadPolicies1AEReadInsurancePolicies1Signed'
        '400':
          description: Bad request
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/AEErrorResponse'
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorSignedResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/jwt:
              schema:
                $ref: '#/components/schemas/AEErrorSignedResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                $refanyOf:
'#/components/schemas/OBErrorResponse'       security:         -   - $ref: '#/components/schemas/AEErrorResponse'
                  - $ref: '#/components/schemas/AEErrorSignedResponse'
      security:
        - UserOAuth2Security:
            - openid
            - insurance-access
  /insurance-policies/{InsurancePolicyId}:
    get:
      tags:
        - Insurance Policies
      operationId: InsurancePoliciesById_read
      summary: Get insurance policy
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/CustomerUserAgentx-customer-user-agent'
        - $ref: '#/components/parameters/FapiAuthDatex-fapi-auth-date'
        - $ref: '#/components/parameters/FapiCustomerIpAddressx-fapi-customer-ip-address'
        - $ref: '#/components/parameters/FapiInterationIdx-fapi-interaction-id'
        - $ref: '#/components/parameters/InsurancePolicyId'
      responses:
        '200':
          description: The request has succeeded.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBReadPolicy1AEReadInsurancePolicy1'
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadPolicy1AEReadInsurancePolicy1'
            application/jwt:
              schema:
                $ref: '#/components/schemas/OBReadPolicy1AEReadInsurancePolicy1Signed'
        '400':
          description: Bad request
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
        '401':          - description$ref: Unauthorized'#/components/schemas/AEErrorSignedResponse'
        '401':
  headers:        description: Unauthorized
   x       headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/jwt:
              schema:
                $ref: '#/components/schemas/AEErrorSignedResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
            application/jwt:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/OBErrorResponseAEErrorResponse'
                  - $ref: '#/components/schemas/AEErrorSignedResponse'
      security:
        - UserOAuth2Security:
            - openid
            - insurance-access
components:
  parameters:
    Authorization:
      name: authorization
      in: header
      required: true
      description: An authorization Token as per https://tools.ietf.org/html/rfc6750
      schema:
        type: string
    ConsentIdBaseConsentId:
      name: ConsentIdBaseConsentId
      in: pathquery
      required: true
      description: A Uniquebase consent identifier forthat links ato givenother consent resourceresources
      schema:
        $ref: '#/components/schemas/uuid'
    CustomerUserAgentConsentId:
      name: x-customer-user-agentConsentId
      in: headerpath
      required: falsetrue
      description: IndicatesUnique theidentifier user-agentfor thata thegiven Userconsent isresource
using.       schema:
        type$ref: string'#/components/schemas/uuid'
    FapiAuthDateInsurancePolicyId:
      name: x-fapi-auth-dateInsurancePolicyId
      in: headerpath
      required: falsetrue
      description: >-Unique identifier for a given insurance policy
  The time when the Userschema:
last logged in with the TPP.   $ref: '#/components/schemas/uuid'
    x-customer-user-agent:
 All dates in the HTTP headers are represented as RFC 7231 Full Dates. An
name: x-customer-user-agent
      in: header
      required: examplefalse
is below:     description: Indicates the user-agent that the Sun,User 10is Sepusing.
2017 19:43:31 UTC       schema:
        type: string
    x-fapi-auth-date:
      patternname: >x-fapi-auth-date
      in: header
  ^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2}   required: false
      (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4}description: >-
        The  \d{2}:\d{2}:\d{2} (GMT|UTC)$
    FapiCustomerIpAddress:
 time when the User last logged in with the TPP. 

  name: x-fapi-customer-ip-address     All dates in: the headerHTTP headers are represented as RFC 7231 required:Full falseDates. An
     description: The User's IPexample addressis ifbelow: the
User
is currently logged in with the TPP.  Sun, 10 Sep 2017  schema19:43:31 UTC
       typeschema: string

   FapiInterationId:     type: string
name: x-fapi-interaction-id       inpattern: header>-
      required: false   ^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2}
  description: An RFC4122 UID used as a correlation id.
 (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4}
     schema:         type: string\d{2}:\d{2}:\d{2} (GMT|UTC)$
    InsurancePolicyIdx-fapi-customer-ip-address:
      name: InsurancePolicyId
x-fapi-customer-ip-address
      in: pathheader
      required: truefalse
      description: UniqueThe identifierUser's forIP aaddress givenif insurancethe policyUser is currently logged in with the schema:TPP.
        $refschema:
'#/components/schemas/uuid'   schemas:     Addresstype: string
     typex-fapi-interaction-id:
object       requiredname: x-fapi-interaction-id
      in: -header
addressLine      required: false
 - postalCode    description: An RFC4122 UID used -as citya correlation id.
      -schema:
state        type: -string
emirate  schemas:
    AEAddOns:
 - country    type: object
 properties:     required:
   addressLine:     - DriversPersonalAccident
    type: array   - PassengersPersonalAccident
      itemsproperties:
        DriversPersonalAccident:
   type: string      type: boolean
   minItems: 1      description: Indicates whether driver accidental maxItems: 3coverage is included
        postalCodePassengersPersonalAccident:
          type: stringboolean
        city:  description: Indicates whether passenger accidental coverage included
      additionalProperties: false
    AEAdditionalInformation:
      type: string object
      required:
        - FirstTimeRegistration
     state:   - VehicleMortgage
      typeproperties:
string         emirateFirstTimeRegistration:
          type: stringboolean
        countryVehicleMortgage:
          type: number
   string       additionalPropertiesdescription: falsePending mortgage amount on the Amount:vehicle
      typeadditionalProperties: numberfalse
    AmountAndCurrencyAEAmountAndCurrency:
      type: object
      required:
        - currencyCurrency
        - amountAmount
      properties:
        currencyCurrency:
          $ref: '#/components/schemas/CurrencyCode'
        amountAmount:
          $ref: '#/components/schemas/Amount'
      additionalPropertiesdescription: false>-
    ClaimHistory:    The Currency and type:Amount objectrelating to the Payment, Refund or Request required:to
        -Pay
NumberClaims      additionalProperties: false
 - NumberApprovedClaims  AEBaseConsentId:
      -type: TotalClaimsAmountstring
      minLength: 1
- TotalApprovedClaimsAmount       propertiesmaxLength: 128
       NumberClaimsdescription: >-
        The type:original integerConsentId assigned by the TPP.


    format: int64   It is used by the TPP NumberApprovedClaims:for updating/renewing parameters associated with
      type: integer
  long-lived consents.

        format:It int64must be provided when long-lived consent parameters are
 TotalClaimsAmount:       updated/renewed for a current $ref: '#/components/schemas/AmountAndCurrency'
   consent that has not yet finished.
    TotalApprovedClaimsAmountAEConsentId:
          $reftype: '#/components/schemas/AmountAndCurrency'string
      additionalPropertiesminLength: false
 1
  CommunicationPreferenceTypes:       typemaxLength: string128
      enumdescription: >-
       - HomeUnique identification assigned by the TPP to identify the -consent
Mobile        resource.
- Other     CommunicationPreferencesAEConsentPermissions:
      type: objectstring
      requiredenum:
        - TypeReadInsurancePoliciesMotor
      description:  >-
PhoneNumber       properties: Specifies the permitted insurance policy data types. 
Type:
        This is $ref: '#/components/schemas/CommunicationPreferenceTypes'
        PhoneNumber:
a list of the data groups being consented by the User, and
        requested type:for stringauthorization with the LFI.
   additionalProperties AEConsentPurpose:
false      CurrencyCodetype: string
      type: stringenum:
        - AccountAggregation
       pattern: ^[A-Z{3}]- PersonalFinanceManager
     First:   - CreditAssessment
  type: string     - MotorInsuranceQuote
format: uri       description:- AEnterpriseFinancialManagement
link to the first page in a paginated result- setOther
    LastAECustomerCommunicationDetails:
      type: stringobject
      formatrequired:
uri        description:- ACorrespondenceAddress
link to the last page in a paginated result- setPermanentAddress
    LinksResource:    - ResidentialAddress
 type: object      - required:CommunicationPreferences
        - SelfEmail
      properties:
        SelfCorrespondenceAddress:
          $ref: '#/components/schemas/SelfAddress'
        FirstPermanentAddress:
          $ref: '#/components/schemas/FirstAddress'
        PrevResidentialAddress:
          $ref: '#/components/schemas/PrevAddress'
        NextCommunicationPreferences:
          $reftype: '#/components/schemas/Next' array
          Lastitems:
            $ref: '#/components/schemas/LastCommunicationPreferences'
      description    minItems: Links1
relevant to the resource       additionalPropertiesmaxItems: false3
    LinksSelf:    Email:
  type: object       requiredtype: string
       - SelfAlternativeEmail:
      properties:    type: string
   Self:    additionalProperties: false
     $refAEError:
'#/components/schemas/Self'       descriptiontype: Linksobject
relevant to the resource   required:
   additionalProperties: false    - MetaTotalPages:Code
      type: object - Message
    required:  properties:
      - TotalPages Code:
     properties:     allOf:
   TotalPages:         -  $ref: '#/components/schemas/TotalPagesAEErrorCode'
      additionalProperties: false   description: Low Next:level textual error code, e.g., UAEOF.Field.Missing
 type: string       formatMessage:
uri       description: A link to thetype: nextstring
page in a paginated result set     OBAddOnsminLength: 1
     type:  object   maxLength: 500
  required:        description: >-
DriversPersonalAccident         - PassengersPersonalAccident  A description of the error properties:that occurred. e.g., 'A mandatory field
   DriversPersonalAccident:         isn't supplied' type: booleanor 'RequestedExecutionDateTime must be in future'

         description: Indicates whether driverUAEOF accidentaldoesn't coveragestandardise isthis includedfield
        PassengersPersonalAccidentPath:
          type: booleanstring
          descriptionminLength: 1
  Indicates whether passenger accidental coverage included   maxLength: 500
  additionalProperties: false     OBAdditionalInformation:  description: >-
   type: object       required: Recommended but optional reference to the JSON Path -of FirstTimeRegistrationthe field
       - VehicleMortgage    with error,  properties:e.g., Data.Initiation.InstructedAmount.Currency
        FirstTimeRegistrationUrl:
          type: booleanstring
          VehicleMortgagedescription: >-
         type: number  URL to help remediate the problem, or provide more description:information, Pendingor
mortgage amount on the vehicle       additionalProperties: falseto API Reference, or help OBBaseConsentId:etc
      typedescription: stringError
      minLengthadditionalProperties: 1false
      maxLengthAEErrorCode: 128
      descriptiontype: string
>-      enum:
  The original ConsentId assigned by the TPP- UAEOF.AccessToken.Unauthorized
        -  It is used by the TPP for updating/renewing parameters associated withUAEOF.AccessToken.InvalidScope
        - UAEOF.Consent.Revoked
        long-lived consentsUAEOF.Consent.TransientAccountAccessFailure
        - ItUAEOF.Consent.AccountTemporarilyBlocked
must be provided when long-lived consent parameters are - UAEOF.Consent.PermanentAccountAccessFailure
      updated/renewed for a current consent that has not yet finished.- UAEOF.Consent.Invalid
        - UAEOF.JWS.InvalidSignature
OBConsentId:       type: string- UAEOF.JWS.Malformed
     minLength: 1  - UAEOF.JWS.InvalidClaim
   maxLength: 128    - UAEOF.JWS.InvalidHeader
 description: >-      - UAEOF.GenericRecoverableError
 Unique identification assigned by the TPP to identify- theUAEOF.GenericError
consent        - resourceUAEOF.JWE.DecryptionError
    OBConsentPermissions:    - UAEOF.JWE.InvalidHeader
 type: string       enum:- UAEOF.Event.UnexpectedEvent
        - ReadInsurancePoliciesMotorUAEOF.Body.InvalidFormat
       description: >- UAEOF.Resource.InvalidResourceId
        - UAEOF.Resource.InvalidFormat
   Specifies the permitted insurance policy data- typesUAEOF.Consent.BusinessRuleViolation
    AEErrorResponse:
      type: object
This is a list of the datarequired:
groups being consented by the User, and  - Errors
     requested forproperties:
authorization with the LFI.     OBConsentPurposeErrors:
          type: array
string          enumitems:
        - AccountAggregation   $ref: '#/components/schemas/AEError'
    - PersonalFinanceManager     minItems: 1
  - CreditAssessment   description: >-
    - MotorInsuranceQuote   An array of detail error codes, -and EnterpriseFinancialManagementmessages, and URLs to documentation
    - Other   to help OBCustomerCommunicationDetails:remediation.
      typeadditionalProperties: objectfalse
    AEErrorSignedResponse:
 required:     type: object
  - CorrespondenceAddress    required:
        - PermanentAddressiss
        - ResidentialAddressexp
        - CommunicationPreferencesnbf
        - Emailmessage
      properties:
        CorrespondenceAddressiss:
          $reftype: '#/components/schemas/Address'string
        PermanentAddress:  description:   >-
     $ref: '#/components/schemas/Address'         ResidentialAddress:
          $ref: '#/components/schemas/Address'[https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
        CommunicationPreferencesexp:
          type: arraynumber
          itemsdescription: >-
            $ref: '#/components/schemas/CommunicationPreferences'[https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
        nbf:
 minItems: 1        type: number
 maxItems: 3         Emaildescription: >-
         type: string   [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
         AlternativeEmailaud:
          type: stringarray
      additionalProperties: false     OBErroritems:
 
    type: object       requiredtype: string
       - Code  description: >-
     - Message       properties:[https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
        Codeiat:
          allOftype: number
          description: >-
$ref: '#/components/schemas/OBErrorCode'           description: Low level textual error code, e.g., UAEOF.Field.Missing[https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
        Messagemessage:
          type$ref: string'#/components/schemas/AEErrorResponse'
          minLengthdescription: 1Signed error response payload
       maxLengthadditionalProperties: 500false
    AEHistoricalInformation:
     description type: >-object
      properties:
     A description of theAdditionalInsuranceInformation:
error that occurred. e.g., 'A mandatory field    type: string
       isn't supplied' or 'RequestedExecutionDateTime mustdescription: beGap in future'car insurance or vehicle under TPL coverage
       UAEOF doesn't standardise this field
        Path DrivingHistory:
          type: stringinteger
          minLengthformat: 1int64
          maxLengthdescription: 500More than 1 year of driving experience
    description: >-   TwelveMonthClaimHistory:
         Recommended but optional reference to the JSON Path of the field $ref: '#/components/schemas/ClaimHistory'
        ThirtySixMonthClaimHistory:
          $ref:  with error, e.g., Data.Initiation.InstructedAmount.Currency'#/components/schemas/ClaimHistory'
      additionalProperties: false
    UrlAEIndividualCustomerDetails:
   
      type: stringobject
      properties:
   description: >-    Gender:
        URL to helptype: remediatestring
the problem, or provide more information, or  DateofBirth:
          totype: APIstring
Reference, or help etc       descriptionformat: Errordate
      additionalProperties: false MaritalStatus:
   OBErrorCode:       type: string
       enum EducationBackground:
        - UAEOF.AccessToken.Unauthorized  type: string
        - UAEOF.AccessToken.InvalidScopeNationality:
         - UAEOF.Consent.Revoked
 type: string
       - UAEOF.Consent.TransientAccountAccessFailure DualNationality:
        - UAEOF.Consent.AccountTemporarilyBlocked type: boolean
      - UAEOF.Consent.PermanentAccountAccessFailure SecondNationality:
       - UAEOF.Consent.Invalid  type: string
     - UAEOF.JWS.InvalidSignature   Salutation:
     - UAEOF.JWS.Malformed    type: string
   - UAEOF.JWS.InvalidClaim    CityofBirth:
    - UAEOF.JWS.InvalidHeader     type: string
  - UAEOF.GenericRecoverableError     CountryofBirth:
   - UAEOF.GenericError      type: string
 - UAEOF.JWE.DecryptionError        pattern: ^[A- UAEOF.JWE.InvalidHeaderZ]{2,2}$
        Religion:
- UAEOF.Event.UnexpectedEvent         - UAEOF.Body.InvalidFormattype: string
        - UAEOF.Resource.InvalidResourceIdMothersMaidenName:
        - UAEOF.Resource.InvalidFormat type: string
      - UAEOF.Consent.BusinessRuleViolation SpouseName:
   OBErrorResponse:       type: objectstring
        requiredSpouseDateofBirth:
        - Errors  type: string
          propertiesformat: date
       Errors SpouseEmploymentDetails:
          type: arraystring
          itemsSpouseContact:
            $reftype: '#/components/schemas/OBError'string
        NumberofChildren:
  minItems: 1       descriptiontype: >-integer
          Anformat: arrayint64
of detail error codes, and messages, andadditionalProperties: URLsfalse
to documentation   AEInsurancePolicy:
     to helptype: remediation.object
      additionalPropertiesrequired:
  false      - OBEventNotification:PolicyType
        type:- objectPolicyDetails
      requiredproperties:
        PolicyType:
  - Webhook       properties$ref: '#/components/schemas/AEPolicyTypes'
       Webhook PolicyDetails:
          $ref: '#/components/schemas/OBWebhookAESupportedPolicyTypes'
      additionalProperties: false
    OBHistoricalInformationAEInsurancePolicyInformation:
      type: object
      propertiesrequired:
        AdditionalInsuranceInformation:- PolicyReference
        - type:IssueDateTime
string        - ExpiryDateTime
 description: Gap in car insurance or vehicle under- TPLPolicyType
coverage        - DrivingHistory:CoverageAmount
        - CoverageStartDateTime
type: integer       - PolicyPremium
  format: int64     - PolicyHolderEmirates
    description: More thanproperties:
1 year of driving experience         TwelveMonthClaimHistoryPolicyReference:
          $ref: '#/components/schemas/ClaimHistoryPolicyReference'
        ThirtySixMonthClaimHistoryIssueDateTime:
          $reftype: '#/components/schemas/ClaimHistory'string
      additionalProperties: false     OBIndividualCustomerDetailsformat: date-time
     type: object  ExpiryDateTime:
    properties:      type: string
 Gender:           typeformat: stringdate-time
        DateofBirthPolicyType:
          type: string
        CoverageAmount:
 format: date-time         MaritalStatus$ref: '#/components/schemas/AEAmountAndCurrency'
        CoverageStartDateTime:
type: string         EducationBackgroundtype: string
         type format: stringdate-time
        NationalityPolicyPremium:
          type$ref: string'#/components/schemas/AEAmountAndCurrency'
        DualNationalityPolicyHolderEmirates:
          type: boolean
        SecondNationalityPreviousPolicy:
          type$ref: string'#/components/schemas/PreviousPolicy'
      additionalProperties: false
Salutation:    AEMotorInsurancePolicy:
      type: stringobject
        CityofBirthrequired:
        - InsurancePolicyId
type: string       - CustomerId
CountryofBirth:        - PolicyHolderName
 type: string
          pattern: ^[A-Z]{2,2}$
 CustomerCommunicationDetails
       Religion: - IndividualCustomerDetails
        type:- stringVehicleInformation
        MothersMaidenName:- InsurancePolicyInformation
         typeproperties:
string         SpouseNameInsurancePolicyId:
          typeallOf:
string         SpouseDateofBirth:   - $ref: '#/components/schemas/uuid'
     type: string    description: Unique identifier for a given insurance format:policy
date-time         SpouseEmploymentDetailsCustomerId:
          type: string
        SpouseContact  description: >-
         type: string  Identifier that uniquely and consistently identifies the NumberofChildren:insurance
          type: integer policy customer
        formatPolicyHolderName:
  int64        additionalPropertiestype: falsestring
    OBInsuranceAuthorizationDetailTypes:    PolicyHolderShortName:
  type: string       enumtype: string
       - urn:openfinanceuae:insurance-consent:v1.0-draft3CategorySegment:
    OBInsurancePolicy:       type: objectstring
        requiredLocalBranch:
          type: string
 - PolicyType      PrimaryLanguage:
  - PolicyDetails       propertiestype: string
       PolicyType CustomerCommunicationDetails:
          $ref: '#/components/schemas/OBPolicyTypesAECustomerCommunicationDetails'
        PolicyDetailsIndividualCustomerDetails:
          $ref: '#/components/schemas/OBSupportedPolicyTypesAEIndividualCustomerDetails'
      additionalProperties: false VehicleInformation:
   OBInsurancePolicyInformation:       type$ref: object'#/components/schemas/AEVehicleInformation'
      required:  InsurancePolicyInformation:
      - IssueDate   $ref: '#/components/schemas/AEInsurancePolicyInformation'
    - ExpiryDate   HistoricalInformation:
     - PolicyType    $ref: '#/components/schemas/AEHistoricalInformation'
   - CoverageAmount    AddOns:
    - CoverageStartDate     $ref: '#/components/schemas/AEAddOns'
  - PolicyPremium     AdditionalInformation:
   - PolicyHolderEmirates       properties:$ref: '#/components/schemas/AEAdditionalInformation'
      additionalProperties: false
IssueDate:    AEOnBehalfOf:
      type: stringobject
          format: date-timeproperties:
        ExpiryDateTradingName:
          type: string
          formatdescription: date-timeTrading Name
        PolicyTypeLegalName:
          type: string
        CoverageAmount:  description: Legal Name
      $ref: '#/components/schemas/AmountAndCurrency'
        CoverageStartDate IdentifierType:
          typeallOf:
string           format: date-time         PolicyPremium:
          $ref: '#/components/schemas/AmountAndCurrencyAEOnBehalfOfIdentifierType'
        PolicyHolderEmirates  description: Identifier Type
        typeIdentifier:
 boolean         PreviousPolicytype: string
         $ref description: '#/components/schemas/PreviousPolicy'Identifier
      additionalProperties: false
    OBInsurnanceAuthorizationDetailConsentAEOnBehalfOfIdentifierType:
      type: objectstring
      requiredenum:
        - TypeOther
    AEPatchConsent:
   - Consent  type: object
   properties:   required:
     Type:   - Status
      $ref: '#/components/schemas/OBInsuranceAuthorizationDetailTypes'properties:
        ConsentStatus:
          $refallOf:
>-            - $ref: '#/components/schemas/OBInsurnanceAuthorizationDetailConsentPropertiesAEPatchConsentStatus1'
          description: >-
        Properties for creating an insurance access object in    The Revoked status must only be set if the current Consent Status is
    authorization_details  properties for the first consent  set to either Authorized  additionalProperties: falseor AwaitingAuthorization
        OBInsurnanceAuthorizationDetailConsentPropertiesRevokedBy:
      type: object   allOf:
   required:         - ConsentId
$ref: '#/components/schemas/AERevokedByCode'
       - Permissions  description: Denotes the Identifier of properties:the revocation.
      additionalProperties: ConsentId:false
    AEPatchConsentStatus1:
     $ref type: '#/components/schemas/OBConsentId'string
      enum:
 Permissions:       - Revoked
    typeAEPolicyTypes:
  array    type: string
      itemsenum:
        - Motor
  $ref  AEReadInsuranceConsent1: '#/components/schemas/OBConsentPermissions'
      type: object
      allOfrequired:
        - $ref: '#/components/schemas/OBInsurnanceAuthorizationDetailProperties'
Data
      additionalProperties: false - Links
  OBInsurnanceAuthorizationDetailProperties:      - type:Meta
object       properties:
        ConsentIdData:
          $ref: '#/components/schemas/OBConsentIdAEReadInsuranceConsent1Properties'
        BaseConsentIdSubscription:
          $ref: '#/components/schemas/OBBaseConsentIdEventNotification'
        PermissionsLinks:
          type$ref: array'#/components/schemas/LinksSelf'
          itemsMeta:
            $ref: '#/components/schemas/OBConsentPermissionsMeta'
      additionalProperties: false
  minItems  AEReadInsuranceConsent1Properties:
1      type: object
 ExpirationDateTime:     required:
     type: string  - ConsentId
       format: date-time Permissions
        - description:CreationDateTime
>-        - Status
   Specified date and time the permissions- willStatusUpdateDateTime
expire.      properties:
       If thisConsentId:
is not populated, the permissions will be open ended.All  $ref: '#/components/schemas/AEConsentId'
        BaseConsentId:
dates in the JSON payloads are represented in ISO 8601 date-time $ref: '#/components/schemas/AEBaseConsentId'
        Permissions:
    format.      type: array
       All date-time fields initems:
responses must include the timezone. An       $ref: '#/components/schemas/AEConsentPermissions'
    example is below:    minItems: 1
        2017-04-05T10:43:07+00:00ExpirationDateTime:
          OnBehalfOftype: string
         $ref: '#/components/schemas/OBOnBehalfOf' format: date-time
          Purposedescription: >-
         type: array  Specified date and time the permissions will expire.

items:            If $ref: '#/components/schemas/OBConsentPurpose'
      description: Primary data for the resourcethis is not populated, the permissions will be open ended.All
          additionalProperties: false dates in the JSON OBInsurnanceAuthorizationDetailReconsentProperties:payloads are represented in ISO 8601 date-time
 type: object       required:   format. 

   - ConsentId       properties: All date-time fields in responses must include the timezone. An
            example is below:

            2017-04-05T10:43:07+00:00
        ConsentIdOnBehalfOf:
          $ref: '#/components/schemas/OBConsentIdAEOnBehalfOf'
      allOf:  Purpose:
          type: array
          items:
           - $ref: '#/components/schemas/OBInsurnanceAuthorizationDetailPropertiesAEConsentPurpose'
      additionalProperties: false CreationDateTime:
   OBMotorInsurancePolicy:       type: objectstring
      required:    format: date-time
   - CustomerId      description:   >-
PolicyHolderName         - PolicyHolderShortName  Date and time at which the resource -was CustomerCommunicationDetailscreated.All dates in the
     - IndividualCustomerDetails      JSON payloads are -represented VehicleInformationin ISO 8601 date-time      - InsurancePolicyInformation
      properties:format. 

            All date-time fields in responses must include the timezone. An
            example is below:

            2017-04-05T10:43:07+00:00
        Status:
          allOf:
            - $ref: '#/components/schemas/ConsentStatusCode'
          description: Specifies the status of consent resource in code form.
        StatusUpdateDateTime:
          type: string
          format: date-time
          description: >-
            Date and time at which the account resource status was updated. All
            dates in the JSON payloads are represented in ISO 8601 date-time
            format. All date-time fields in responses must include the timezone.
            An example is below: 2017-04-05T10:43:07+00:00
        RevokedBy:
          allOf:
            - $ref: '#/components/schemas/AERevokedByCode'
          description: Denotes the Identifier of the revocation.
      additionalProperties: false
    AEReadInsuranceConsent1Signed:
      type: object
      required:
        - iss
        - exp
        - nbf
        - message
      properties:
        iss:
          type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
        exp:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
        nbf:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
        aud:
          type: array
          items:
            type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
        iat:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
        message:
          $ref: '#/components/schemas/AEReadInsuranceConsent1'
      additionalProperties: false
    AEReadInsuranceConsents1:
      type: object
      required:
        - Data
        - Links
      properties:
        Data:
          type: array
          items:
            $ref: '#/components/schemas/AEReadInsuranceConsent1Properties'
        Links:
          $ref: '#/components/schemas/LinksResource'
      additionalProperties: false
    AEReadInsuranceConsents1Signed:
      type: object
      required:
        - iss
        - exp
        - nbf
        - message
      properties:
        iss:
          type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
        exp:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
        nbf:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
        aud:
          type: array
          items:
            type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
        iat:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
        message:
          $ref: '#/components/schemas/AEReadInsuranceConsents1'
      additionalProperties: false
    AEReadInsurancePolicies1:
      type: object
      required:
        - Data
        - Links
        - Meta
      properties:
        Data:
          type: array
          items:
            $ref: '#/components/schemas/AEInsurancePolicy'
        Links:
          $ref: '#/components/schemas/LinksResource'
        Meta:
          $ref: '#/components/schemas/MetaTotalPages'
      additionalProperties: false
    AEReadInsurancePolicies1Signed:
      type: object
      required:
        - iss
        - exp
        - nbf
        - message
      properties:
        iss:
          type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
        exp:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
        nbf:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
        aud:
          type: array
          items:
            type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
        iat:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
        message:
          $ref: '#/components/schemas/AEReadInsurancePolicies1'
      additionalProperties: false
    AEReadInsurancePolicy1:
      type: object
      required:
        - Data
        - Links
        - Meta
      properties:
        Data:
          $ref: '#/components/schemas/AEInsurancePolicy'
        Links:
          $ref: '#/components/schemas/LinksSelf'
        Meta:
          $ref: '#/components/schemas/MetaTotalPages'
      additionalProperties: false
    AEReadInsurancePolicy1Signed:
      type: object
      required:
        - iss
        - exp
        - nbf
        - message
      properties:
        iss:
          type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
        exp:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
        nbf:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
        aud:
          type: array
          items:
            type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
        iat:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
        message:
          $ref: '#/components/schemas/AEReadInsurancePolicy1'
      additionalProperties: false
    AERevokedByCode:
      type: string
      enum:
        - UAEOF.LFI
        - UAEOF.TPP
        - UAEOF.LFI.InitiatedByUser
        - UAEOF.TPP.InitiatedByUser
    AESupportedPolicyTypes:
      $ref: '#/components/schemas/AEMotorInsurancePolicy'
    AEUpdateConsent1:
      type: object
      required:
        - Data
      properties:
        Data:
          $ref: '#/components/schemas/AEPatchConsent'
        Subscription:
          $ref: '#/components/schemas/EventNotification'
      description: Patch Account Access Consent
      additionalProperties: false
    AEUpdateConsent1Signed:
      type: object
      required:
        - iss
        - exp
        - nbf
        - message
      properties:
        iss:
          type: string
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
        exp:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
        nbf:
          type: number
          description: >-
            [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
        aud:
          type: array
CustomerId:           typeitems:
string         PolicyHolderName:   type: string
      type: string   description: >-
    PolicyHolderShortName:           type: string[https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
         CategorySegmentiat:
          type: stringnumber
        LocalBranch:  description: >-
       type: string         PrimaryLanguage:
          type: string[https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
         CustomerCommunicationDetailsmessage:
          $ref: '#/components/schemas/OBCustomerCommunicationDetailsAEUpdateConsent1'
 
      IndividualCustomerDetailsadditionalProperties: false
    AEVehicleInformation:
    $ref: '#/components/schemas/OBIndividualCustomerDetails'
  type: object
      VehicleInformationproperties:
        CarMake:
 $ref: '#/components/schemas/OBVehicleInformation'         InsurancePolicyInformationtype: string
        CarModel:
$ref: '#/components/schemas/OBInsurancePolicyInformation'         HistoricalInformationtype: string
        CarModelYear:
$ref: '#/components/schemas/OBHistoricalInformation'         AddOnstype: string
         $ref: '#/components/schemas/OBAddOns' pattern: ^[0-9]{4}$
        AdditionalInformationCarPurchaseDateTime:
          $reftype: '#/components/schemas/OBAdditionalInformation' string
          additionalPropertiesformat: falsedate-time
    OBOnBehalfOf:    CarSpecification:
  type: object       propertiestype: string
       TradingName EstimatedValue:
          type: stringinteger
          descriptionformat: Tradingint32
Name         LegalNameRegistrationDateTime:
          type: string
          descriptionformat: Legaldate-time
Name         IdentifierTypeChassisNumber:
          allOftype:      string
      - $ref: '#/components/schemas/OBOnBehalfOfIdentifierType' EngineNumber:
          descriptiontype: Identifierstring
Type         IdentifierCountryofOrigin:
          type: string
        VehicleColor:
 description:  Identifier       additionalPropertiestype: falsestring
    OBOnBehalfOfIdentifierType:    PlateNumber:
  type: string       enumtype: string
       - Other
PlateCode:
   OBPatchConsent:       type: string
 object       requiredPlateCategory:
         - Status type: string
        propertiesVehicleMileage:
        Status:   type: integer
      allOf:    format: int64
       - $refVehicleWeight:
'#/components/schemas/OBPatchConsentStatus1'          type: description:integer
>-          format: int64
 The Revoked status must only be set ifTrafficCodeIssuingEmirate:
the current Consent Status is      type: string
     set to either AuthorizedTrafficIDNumber:
or AwaitingAuthorization         RevokedBytype: string
         allOfVehicleHistory:

           - $ref: '#/components/schemas/OBRevokedByVehicleHistory'
      additionalProperties: false
    descriptionAEWebhook:
Denotes   the Identifier of thetype: revocation.object
      additionalProperties: falserequired:
        - Url
        OBPatchConsentStatus1:- IsActive
      typeproperties:
string        enumUrl:
        -  Revokedtype: string
   OBPolicyTypes:       typedescription: stringThe TPP Callback URL being registered with enum:the LFI
       - MotorIsActive:
    OBReadConsent1:       type: boolean
object       required:   description: >-
    - Data       The TPP -specifying Linkswhether the LFI should send (IsActive true) properties:or
        Data:    not send (IsActive false) Webhook Notifications to $ref:the '#/components/schemas/OBInsurnanceAuthorizationDetailConsent'TPP's Webhook
        Links:    URL
      $ref: '#/components/schemas/LinksSelf'description: A Webhook Subscription Schema
      additionalProperties: false
    OBReadConsents1Address:
      type: object
      required:
        - DataAddressLine
        - PostalCode
        - LinksCity
      properties:  - StateEmirate
     Data:   - Country
      $refproperties:
'#/components/schemas/OBInsurnanceAuthorizationDetailConsent'         LinksAddressLine:
          $reftype: '#/components/schemas/LinksSelf' array
          additionalPropertiesitems:
false     OBReadPolicies1:       type: objectstring
      required:    minItems: 1
   - Data      maxItems: 3
 - Links      PostalCode:
  - Meta       propertiestype: string
       Data City:
          type: arraystring
        StateEmirate:
       items:   type: string
        $refCountry:
'#/components/schemas/OBInsurancePolicy'          Linkstype: string
      additionalProperties: false
 $ref: '#/components/schemas/LinksResource'  Amount:
      Metatype: number
    ClaimHistory:
     $ref type: '#/components/schemas/MetaTotalPages'object
      additionalPropertiesrequired:
false      OBReadPolicy1:  - NumberClaims
   type: object  properties:
    required:    NumberClaims:
    - Data     type: integer
  - Links       format: int64
- Meta       propertiesNumberApprovedClaims:
        Data  type: integer
         $ref format: '#/components/schemas/OBInsurancePolicy'int64
        LinksTotalClaimsAmount:
          $ref: '#/components/schemas/LinksSelfAEAmountAndCurrency'
        MetaTotalApprovedClaimsAmount:
          $ref: '#/components/schemas/MetaTotalPagesAEAmountAndCurrency'
      additionalProperties: false
    OBRevokedByCommunicationPreferenceTypes:
      type: string
      enum:
        - UAEOF.LFI enum:
        - UAEOF.TPPHome
        - UAEOF.LFI.InitiatedByUserMobile
        - UAEOF.TPP.InitiatedByUserOther
    OBSupportedPolicyTypesCommunicationPreferences:
      $reftype: '#/components/schemas/OBMotorInsurancePolicy'
 object
  OBUpdateConsent1:     required:
 type: object      - required:Type
        - DataPhoneNumber
      properties:
        DataType:
          $ref: '#/components/schemas/OBPatchConsentCommunicationPreferenceTypes'
        SubscriptionPhoneNumber:
          $reftype: '#/components/schemas/OBEventNotification'string
      descriptionadditionalProperties: Patchfalse
Account Access Consent  ConsentStatusCode:
    additionalProperties: false type: string
  OBVehicleInformation:    enum:
  type: object     - Authorized
properties:        - CarMake:AwaitingAuthorization
        - Rejected
type: string       - Revoked
CarModel:        - Expired
 type: string      - Suspended
 CarModelYear:   CurrencyCode:
       type: string
 
        pattern: ^[0A-9Z]{43}$
        CarPurchaseDateEventNotification:
          type: stringobject
          format: date-time
        CarSpecification:
   required:
      type: string - Webhook
      EstimatedValueproperties:
          typeWebhook:
integer           format$ref: int32'#/components/schemas/AEWebhook'
      additionalProperties: false
DateofRegistration:    First:
      type: string
          format: date-timeuri
      description: A ChassisNumber:link to the first page in a paginated result set
 type: string  Last:
      EngineNumbertype: string
      format: uri
 type: string    description: A link to the CountryofOrigin:last page in a paginated result set
    typeLinksResource:
string      type: object
 VehicleColor:     required:
     type:  string - Self
      PlateNumberproperties:
         Self:
type: string         PlateCode$ref: '#/components/schemas/Self'
        First:
type: string         PlateCategory$ref: '#/components/schemas/First'
        Prev:
type: string         VehicleMileage$ref: '#/components/schemas/Prev'
         typeNext:
integer           format: int64$ref: '#/components/schemas/Next'
         VehicleWeightLast:
          type$ref: integer'#/components/schemas/Last'
      description: Links relevant to format:the int64resource
      additionalProperties: false
TrafficCodeIssuingEmirate:    LinksSelf:
      type: object
  string    required:
     TrafficIDNumber:   - Self
      typeproperties:
string         VehicleHistorySelf:
          $ref: '#/components/schemas/VehicleHistorySelf'
      additionalPropertiesdescription: falseLinks relevant to the  OBWebhook:resource
      typeadditionalProperties: objectfalse
      requiredMeta:
      type: object
- Url     description: Metadata relevant to -the IsActiveresource
      propertiesadditionalProperties: false
       UrlMetaTotalPages:
          type: stringobject
          descriptionrequired:
The TPP Callback URL being registered with the LFI- TotalPages
       IsActiveproperties:
          typeTotalPages:
boolean           description$ref: >-'#/components/schemas/TotalPages'
      additionalProperties: false
    TheNext:
TPP specifying whether the LFI should sendtype: (IsActivestring
true) or     format:    uri
   not send (IsActive false)description: WebhookA Notificationslink to the TPP'snext Webhookpage in a paginated result set
    PolicyReference:
  URL    type: string
 description: A Webhook Subscription Schema description: Insurance policy identifier issued by additionalProperties:the falseinsurer
    Prev:
      type: string
      format: uri
      description: A link to the previous page in a paginated result set
    PreviousPolicy:
      type: object
      required:
        - PolicyReference
        - Insurer
        - PolicyStartDatePolicyStartDateTime
        - PolicyExpiryDatePolicyExpiryDateTime
      properties:
        PolicyReference:
          type$ref: string'#/components/schemas/PolicyReference'
        Insurer:
          type: string
        PolicyStartDatePolicyStartDateTime:
          type: string
          format: date-time
        PolicyExpiryDatePolicyExpiryDateTime:
          type: string
          format: date-time
      additionalProperties: false
    Self:
      type: string
      format: uri
      description: A link to the current resource
    TotalPages:
      type: integer
      format: int32
      minimum: 0
      description: Meta Data relevant to the resourceTotal number of pages where a result set is paginated
    VehicleHistory:
      type: string
      enum:
        - Imported
        - Modified
        - DeclaredTotalLoss
    Versions:
      type: string
  
   enum:         - v1.0-draft3
    uuid:
      type: string
  securitySchemes:
    TPPOAuth2Security:
      type: oauth2
      description: >-
        TPP confidential client authorization with the LFI to stage a consent.
        **Please refer to [OpenID FAPI Security Profile 1.0 -Part 2
        Advanced](https://openid.net/specs/openid-financial-api-part-2-1_0.html#authorization-server)
        - 5.2.2 point 14 - shall authenticate the confidential client using one
        of the following methods private_key_jwt and [OpenID Connect Core
        1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
        9. Client Authentication private_key_jwt**
      flows:
        clientCredentials:
          tokenUrl: https://authserver.example/token
          scopes:
            openid: Activates OpenID Connect Support
            accounts: Ability to read Accounts Information
            insurance-access: Right to read insurance policies
    UserOAuth2Security:
      type: oauth2
      description: >-
        [OAuth2 PAR flow](https://datatracker.ietf.org/doc/html/rfc9126), it is
        required when the User needs to perform SCA with the LFI when a TPP
        wants to access an LFI resource owned by the User. **Please refer to
        [OpenID FAPI Security Profile 1.0 -Part 2
        Advanced](https://openid.net/specs/openid-financial-api-part-2-1_0.html#authorization-server)
        - 5.2.2 point 14 - shall authenticate the confidential client using one
        of the following methods private_key_jwt and [OpenID Connect Core
        1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
        9. Client Authentication private_key_jwt**
      flows:
        authorizationCode:
          authorizationUrl: https://authserver.example/authorization
          tokenUrl: https://authserver.example/token
          scopes:
            openid: Activates OpenID Connect Support
            accounts: >-
              Ability to read Accounts Information. This is a parameterized
              scope with the ConsentId
            insurance-access: >-
              Right to read insurance policies based on authorization by the End
              User
    LFIWebhookSecurity:
      type: http
      description: >-
        The LFI generates a Self Signed JWT Authorization Token for Client
        Authentication with the TPP. **Please refer to Self-Signed JWT
        Authorization Token Specification in the UAE Standard API User Guide**
      scheme: bearer
      bearerFormat: JWT

Attachments

The Insurance OpenAPI description is attached, together with a spreadsheet that lists all properties by operation.

View file
nameuae-insurance.xlsx
View file
nameuae-insurance-openapi.yaml

...