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
|