openapi: 3.0.1
info:
title: Ozone Connect - Health InsuranceCheck APIs
contact:
name: Ozone Financial Technology Limited
description: |
This document provides the OAS3 specification for InsuranceHealth Check APIs for Ozone Connect.
These APIs should be implemented by aan Financialfinancial Institutioninstitution so that Ozone
can expose these end-points to TPPs ensure that the institution's Ozone Connect implementation is up and running.
#### Changes in Release 2024.34
Marked o3-caller-org-id, o3-caller-client-id, o3-caller-software-statement-id, o3-consent-id, o3-caller-interaction-id and o3-psu-identifier headers mandatory.
version: Release 2024.34
tags:
- name: Insurance Policies
description: |
APIs that should be implemented by Financial Institutions to expose `Insurance` information to TPPs.
servers:
- url: https://<your-ozone-connect-server>
paths:
/insurance-policies:
get:
tags:
- Insurance Policies
operationId: InsurancePolicies_list
summary: Get insurance policies
description: |
This operation retrieves a list of insurance policies for a given consent
parameters:
# common header parameters that set context
- $ref: "#/components/parameters/providerId"
- $ref: "#/components/parameters/aspspId"
- $ref: "#/components/parameters/callerOrgId"
- $ref: "#/components/parameters/callerClientId"
- $ref: "#/components/parameters/callerSoftwareStatementId"
- $ref: "#/components/parameters/apiUri"
- $ref: "#/components/parameters/apiOperation"
- $ref: "#/components/parameters/consentId"
- $ref: "#/components/parameters/callerInteractionId"
- $ref: "#/components/parameters/ozoneInteractionId"
- $ref: "#/components/parameters/psuIdentifier"
# Query params
- $ref: "#/components/parameters/page"
- $ref: "#/components/parameters/page-size"
responses:
'200':
$ref: "#/components/responses/InsurancePoliciesGetResponse"
'400':
description: |
The operation __must__ be failed with a status of `400` under the following error conditions:
The `o3-aspsp-id` header is missing or has an unexpected value
The operation __should__ be failed with a status of `400` under the following error conditions:
The ASPSP should fail the call if the `o3-psu-identifier` header is not specified.
The operation __may__ be failed with a status of `400` under the following error conditions:
One or more of the mandatory header parameters is not specified or has an unexpected value
- `o3-api-uri`,
- `o3-api-operation`,
- `o3-ozone-interaction-id`
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'401':
description: |
The operation __must__ be failed with a status of `401` under the following error conditions:
The API consumer is not authorised.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/insurance-policies/{InsurancePolicyId}:
get:
tags:
- Insurance Policies
operationId: InsurancePoliciesById_read
summary: Get insurance policy
description: |
This operation retrieves a single insurance policy for a given consent
parameters:
# common header parameters that set context
- $ref: "#/components/parameters/providerId"
- $ref: "#/components/parameters/aspspId"
- $ref: "#/components/parameters/callerOrgId"
- $ref: "#/components/parameters/callerClientId"
- $ref: "#/components/parameters/callerSoftwareStatementId"
- $ref: "#/components/parameters/apiUri"
- $ref: "#/components/parameters/apiOperation"
- $ref: "#/components/parameters/consentId"
- $ref: "#/components/parameters/callerInteractionId"
- $ref: "#/components/parameters/ozoneInteractionId"
- $ref: "#/components/parameters/psuIdentifier"
- $ref: '#/components/parameters/InsurancePolicyId'
responses:
'200':
$ref: "#/components/responses/InsurancePolicyGetResponse"
'400':
description: |
The operation __must__ be failed with a status of `400` under the following error conditions:
The `o3-aspsp-id` header is missing or has an unexpected value
The operation __should__ be failed with a status of `400` under the following error conditions:
The ASPSP should fail the call if the `o3-psu-identifier` header is not specified.
The operation __may__ be failed with a status of `400` under the following error conditions:
One or more of the mandatory header parameters is not specified or has an unexpected value
- `o3-api-uri`,
- `o3-api-operation`,
- `o3-ozone-interaction-id`
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'401':
description: |
The operation __must__ be failed with a status of `401` under the following error conditions:
The API consumer is not authorised.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
components:
schemas:
InsurancePolicyGetResponseBody:
type: object
properties:
data:
$ref: '#/components/schemas/AEInsurancePolicyTypes'
meta:
$ref: "#/components/schemas/Meta"
InsurancePoliciesGetResponseBody:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/AEInsurancePolicyTypes'
meta:
$ref: "#/components/schemas/Meta"
AEInsurancePolicyTypes:
$ref: '#/components/schemas/AEMotorInsurancePolicy'
AEMotorInsurancePolicy:
type: object
required:
- InsurancePolicyId
- PolicyType
- Customer
properties:
InsurancePolicyId:
allOf:
- $ref: '#/components/schemas/uuid'
description: Unique identifier for a given insurance policy
PolicyType:
type: string
enum:
- Motor
Customer:
$ref: '#/components/schemas/AEMotorInsuranceCustomer'
Product:
$ref: '#/components/schemas/AEMotorInsuranceProduct'
Transactions:
$ref: '#/components/schemas/AEMotorInsuranceTransactions'
additionalProperties: false
AEMotorInsuranceCustomer:
type: object
required:
- CustomerId
- FullName
- PrimaryLanguage
properties:
CustomerId:
type: string
description: >-
Identifier that uniquely and consistently identifies the insurance
policy customer
FullName:
type: string
description: Full name of the insurance policy customer
ShortName:
type: string
description: Short name of the insurance policy customer
CategorySegment:
type: string
description: Customer category or segment, as defined by the insurance company
LocalBranch:
type: string
description: Local branch, as defined by the insurance company
PrimaryLanguage:
$ref: '#/components/schemas/AECustomerPrimaryLanguage'
BillingAddress:
allOf:
- $ref: '#/components/schemas/AEInsuranceAddress'
description: Customer billing address
PermanentAddress:
allOf:
- $ref: '#/components/schemas/AEInsuranceAddress'
description: Customer permanent address
ResidentialAddress:
allOf:
- $ref: '#/components/schemas/AEInsuranceAddress'
description: Customer residential address
CommunicationPreferences:
type: array
items:
$ref: '#/components/schemas/AEInsuranceCommunicationPreferences'
minItems: 1
maxItems: 3
description: Customer phone communication preferences, in prefer order
BackgroundInformation:
allOf:
- $ref: '#/components/schemas/AEInsuranceCustomerBackgroundInformation'
description: Customer background information
EmploymentInformation:
allOf:
- $ref: '#/components/schemas/AEInsuranceCustomerEmploymentDetails'
description: Customer employment details
IdentityInformation:
allOf:
- $ref: '#/components/schemas/AEInsuranceIdentificationDetails'
description: Customer identification information
EmergencyContacts:
type: array
items:
type: string
description: Customer emergency contacts, in prefer order
additionalProperties: false
AEMotorInsuranceProduct:
type: object
required:
- InsuredVehicle
- Policy
properties:
InsuredVehicle:
$ref: '#/components/schemas/AEMotorInsuranceVehicle'
Policy:
$ref: '#/components/schemas/AEMotorInsurancePolicyProperties'
additionalProperties: false
AEMotorInsuranceTransactions:
type: object
required:
- PolicyPremiumValue
- PolicyPremiumPaymentPeriod
- OutstandingPremiumBalance
properties:
PolicyPremiumValue:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Policy premium value
PolicyPremiumPaymentPeriod:
type: string
minLength: 1
maxLength: 35
description: Policy premium payment period as defined by the insurer
OutstandingPremiumBalance:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Outstanding premium balance
TwelveMonthClaimSummary:
allOf:
- $ref: '#/components/schemas/AEInsuranceClaimSummary'
description: Summary of claims in last twelve months
ThirtySixMonthClaimSummary:
allOf:
- $ref: '#/components/schemas/AEInsuranceClaimSummary'
description: Summary of claims in last thirty-six months
Loan:
allOf:
- $ref: '#/components/schemas/AEMotorInsuranceLoanDetails'
description: Loan details
BenefitPayouts:
type: array
items:
$ref: '#/components/schemas/AEMotorInsuranceBenefitPayout'
description: Benefit payout details
Claims:
type: array
items:
$ref: '#/components/schemas/AEInsuranceClaimDetails'
minItems: 1
maxItems: 3
description: >-
Indivdual claim details, maximim of three claims returned in
response. Omit if no claims made
PreviousPolicies:
type: array
items:
$ref: '#/components/schemas/AEMotorInsurancePreviousPolicyDetails'
minItems: 1
maxItems: 2
description: Previous policy details
description: Insurance transaction information
additionalProperties: false
AEMotorInsuranceVehicle:
type: object
properties:
Make:
type: string
minLength: 1
maxLength: 70
description: Vehicle make
Model:
type: string
minLength: 1
maxLength: 140
description: Vehicle model
ModelYear:
type: string
pattern: ^[0-9]{4}$
description: Vehicle model year
PurchaseDate:
type: string
format: date
description: Vehicle purchase date
Specification:
type: string
minLength: 1
maxLength: 140
description: Vehicle specification
EstimatedValue:
type: integer
format: int32
description: Vehicle estimated value
RegistrationDate:
type: string
format: date
description: Vehicle registration date
VehicleIdentificationNumber:
type: string
minLength: 1
maxLength: 35
description: Vehicle Identification Number (VIN or chassis number)
EngineNumber:
type: string
description: Vehicle engine number
CountryofOrigin:
allOf:
- $ref: '#/components/schemas/AEInsuranceCountryCode'
description: Vehicle registration country based on ISO 3166-1 alpha-2 code
Color:
type: string
description: Vehicle color
PlateNumber:
type: string
minLength: 1
maxLength: 16
description: Vehicle plate number
PlateCode:
type: string
minLength: 1
maxLength: 16
description: Vehicle plate code
VehicleMileage:
type: integer
format: int64
description: Vehicle mileage to nearest kilometer
VehicleWeight:
type: integer
format: int64
description: Vehicle weight to nearest kilograms
TrafficCodeIssuingEmirate:
allOf:
- $ref: '#/components/schemas/AEInsuranceEmirate'
description: Emirate that issued the traffic code for the vehicle
TrafficIdentificationNumber:
type: string
minLength: 1
maxLength: 35
description: Traffic identification number
VehicleHistory:
allOf:
- $ref: '#/components/schemas/VehicleHistory'
description: Indicator of vehicle history
FirstTimeRegistration:
type: boolean
description: First time vehicle was registered
VehicleFinance:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Vehicle finance amount and currency
additionalProperties: false
AEMotorInsurancePolicyProperties:
type: object
required:
- PolicyReference
- IssueDateTime
- ExpiryDateTime
- CoverageType
- PolicyLimits
- PolicyExclusions
- CoverageAmount
- CoverageStartDate
- CoverageEndDate
properties:
PolicyReference:
$ref: '#/components/schemas/PolicyReference'
IssueDateTime:
type: string
format: date
description: Date when the policy was issued
ExpiryDateTime:
type: string
format: date
description: Date when the policy expires
CoverageType:
type: string
minLength: 1
maxLength: 170
description: Freeform text that describes coverage as specified by the insurer
PolicyLimits:
type: string
minLength: 1
maxLength: 350
description: Policy limits as free form text
PolicyExclusions:
type: string
minLength: 1
maxLength: 350
description: Policy exclusions as free form text
CoverageAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Coverage amount and currency
CoverageStartDate:
type: string
format: date
description: Date when the coverage starts
CoverageEndDate:
type: string
format: date
description: Date when the coverage ends
PreviousPolicyInformation:
allOf:
- $ref: '#/components/schemas/AEMotorInsurancePreviousPolicy'
description: Details of previous policy held by the insurer
DriversPersonalAccidentIncluded:
type: boolean
description: >-
Indicates whether the policy includes personal accident coverage for
the driver
PassengersPersonalAccidentIncluded:
type: boolean
description: >-
Indicates whether the policy includes personal accident coverage for
the passengers
additionalProperties: false
AEAmountAndCurrency:
type: object
required:
- Currency
- Amount
properties:
Currency:
$ref: '#/components/schemas/CurrencyCode'
Amount:
$ref: '#/components/schemas/Amount'
description: >-
The Currency and Amount relating to the Payment, Refund or Request to
Pay
additionalProperties: false
AEInsuranceClaimSummary:
type: object
required:
- NumberClaims
properties:
NumberClaims:
type: integer
format: int64
description: Number of claims in period
NumberApprovedClaims:
type: integer
format: int64
description: Number of approved claims in period
TotalClaimsAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Total amount of claims in period
TotalApprovedClaimsAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Total amount of approved claims in period
additionalProperties: false
AEMotorInsuranceLoanDetails:
type: object
required:
- LoanAmount
- LoanStartDate
- LoanInterestRate
- RepaymentSchedule
- OutstandingLoanBalance
properties:
LoanAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Loan amount and currency
LoanStartDate:
type: string
format: date
description: Loan start date
LoanInterestRate:
type: number
description: Loan interest rate
RepaymentSchedule:
type: string
minLength: 1
maxLength: 16
description: Repayment frequency
OutstandingLoanBalance:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Outstanding loan balance
description: Loan details
additionalProperties: false
AEMotorInsuranceBenefitPayout:
type: object
required:
- Amount
- Date
properties:
Amount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Benefit payout amount and currency
Date:
type: string
format: date
description: Benefit payout date
description: Benefit payout
additionalProperties: false
AEInsuranceClaimDetails:
type: object
required:
- ClaimDate
- Description
- Status
- ClaimAmount
properties:
ClaimDate:
type: string
format: date
description: Date on which claim submitted
Description:
type: string
minLength: 1
maxLength: 140
description: Claim description
Status:
allOf:
- $ref: '#/components/schemas/AEInsuranceClaimStatus'
description: Claim status
ClaimAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Claim amount and currency
DeductibleAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Deductible amount and currency
description: Individual claim detail
additionalProperties: false
AEMotorInsurancePreviousPolicyDetails:
type: object
required:
- InsuranceCompanyName
- PolicyReference
- PurchaseDate
- minItems
- maxItems
- CoverageType
properties:
InsuranceCompanyName:
type: string
minLength: 1
maxLength: 140
description: Previous insurer
PolicyReference:
type: string
minLength: 1
maxLength: 70
description: Previous policy reference
PurchaseDate:
type: string
format: date
description: Previous policy start date
minItems:
type: number
enum:
- 1
description: Previous policy renewal dates, up to two renewals
maxItems:
type: number
enum:
- 2
RenewalDate:
type: array
items:
type: string
format: date
DeductibleAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Deductible amount and currency
CoverageType:
type: string
minLength: 1
maxLength: 35
description: Policy coverage type
Adjustments:
type: array
items:
$ref: '#/components/schemas/AEMotorInsurancePolicyAdjustments'
minItems: 1
maxItems: 2
description: >-
Policy adjustments recorded on the policy. Omit if no adjustments
made
Loan:
allOf:
- $ref: '#/components/schemas/AEMotorInsuranceLoanDetails'
description: Loan details
BenefitPayouts:
type: array
items:
$ref: '#/components/schemas/AEMotorInsuranceBenefitPayout'
description: Benefit payout details
TerminationDate:
type: string
format: date
description: Policy termination date
ReasonforCancellation:
type: string
minLength: 1
maxLength: 140
description: Reason for policy termination
RefundAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Refund amount and currency
SurrenderDate:
type: string
format: date
description: Surrender date
SurrenderAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Surrender amount and currency
ReasonforSurrender:
type: string
description: Reason for surrender
CashValueofPolicyPaidtoPolicyholder:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Cash value of policy paid to policyholder
description: Previous policy details
additionalProperties: false
AEInsuranceCountryCode:
type: string
pattern: '[A-Z]{2}'
AEInsuranceEmirate:
type: string
enum:
- AbuDhabi
- Ajman
- Dubai
- Fujairah
- RasAlKhaimah
- Sharjah
- UmmAlQuwain
VehicleHistory:
type: string
enum:
- Imported
- Modified
- DeclaredTotalLoss
- Other
PolicyReference:
type: string
description: Insurance policy identifier issued by the insurer
AEMotorInsurancePreviousPolicy:
type: object
required:
- Insurer
- PolicyStartDate
- PolicyExpiryDate
properties:
Insurer:
type: string
description: Previous issuer
PolicyStartDate:
type: string
format: date
description: Previous policy start date
PolicyExpiryDate:
type: string
format: date
description: Previous policy expiry date
PreviousClaims:
type: array
items:
$ref: '#/components/schemas/PreviousClaims'
description: >-
Claims on previous policy. If there are no claims on the policy then
this property is not required
additionalProperties: false
AEInsuranceAddress:
type: object
required:
- AddressLine
- PostCode
- TownName
- CountrySubDivision
- Country
properties:
AddressLine:
type: array
items:
$ref: '#/components/schemas/AEInsuranceAddressLine'
minItems: 1
maxItems: 3
description: Address line in free format text
PostCode:
type: string
minLength: 1
maxLength: 16
description: Postal code
TownName:
type: string
minLength: 1
maxLength: 140
description: Name of a built-up area, such as a town or city
CountrySubDivision:
type: string
minLength: 1
maxLength: 35
description: Country subdivision, such as state or province
Country:
type: string
pattern: '[A-Z]{2}'
description: Country based on ISO 3166-1 alpha-2 code
description: Address information based on ISO 20022
additionalProperties: false
AEInsuranceCommunicationPreferences:
type: object
required:
- Type
- PhoneNumber
properties:
Type:
$ref: '#/components/schemas/AEInsuranceCommunicationPreferenceTypes'
PhoneNumber:
$ref: '#/components/schemas/AEInsuranceMobileNumber'
additionalProperties: false
AEInsuranceCommunicationPreferenceTypes:
type: string
enum:
- Home
- Mobile
- Other
description: Phone communication preference types
AEInsuranceMobileNumber:
type: string
AEInsuranceAddressLine:
type: string
minLength: 1
maxLength: 70
AECustomerPrimaryLanguage:
type: string
enum:
- English
- Arabic
- Other
description: Primary language spoken by the insurance policy customer
AEInsuranceCustomerBackgroundInformation:
type: object
required:
- Gender
- DateOfBirth
- MaritalStatus
- Nationality
- Salutation
properties:
Gender:
allOf:
- $ref: '#/components/schemas/AEInsuranceGender'
description: Gender
DateOfBirth:
type: string
format: date
description: Date of birth
MaritalStatus:
allOf:
- $ref: '#/components/schemas/AEInsuranceMartitalStatus'
description: Martial status
EducationBackground:
allOf:
- $ref: '#/components/schemas/AEInsuranceEducationBackground'
description: Education background
Nationality:
allOf:
- $ref: '#/components/schemas/AEInsuranceCountryCode'
description: Nationality, based on ISO 3166-1 alpha-2 code
SecondNationality:
allOf:
- $ref: '#/components/schemas/AEInsuranceCountryCode'
description: >-
Second nationality, based on ISO 3166-1 alpha-2 code. Presence of
second nationality indicates customer is dual national
Salutation:
allOf:
- $ref: '#/components/schemas/AEInsuranceSalutation'
description: Customer salutation
CountryOfBirth:
allOf:
- $ref: '#/components/schemas/AEInsuranceCountryCode'
description: Country of birth
PlaceOfBirth:
type: string
minLength: 1
maxLength: 140
description: Place of birth
Religion:
allOf:
- $ref: '#/components/schemas/AEInsuranceReligion'
description: Religion
MotherMaidenName:
type: string
minLength: 1
maxLength: 140
description: Mother's maiden name
SpouseName:
type: string
minLength: 1
maxLength: 140
description: Spouse name
SpouseDateOfBirth:
type: string
format: date
description: Spouse date of birth
SpouseEmploymentDetails:
allOf:
- $ref: '#/components/schemas/AEInsuranceEmploymentStatus'
description: Spouse employment details
SpousePhoneNumber:
allOf:
- $ref: '#/components/schemas/AEInsuranceMobileNumber'
description: Spouse phone number
NumberOfDependents:
type: integer
format: int64
description: Number of dependents
additionalProperties: false
AEInsuranceCustomerEmploymentDetails:
type: object
properties:
Profession:
type: string
minLength: 1
maxLength: 70
description: Profession
ProfessionDescription:
type: string
minLength: 1
maxLength: 140
description: Profession description
EmployerName:
type: string
minLength: 1
maxLength: 70
description: Employer name
EmployerAddress:
allOf:
- $ref: '#/components/schemas/AEInsuranceAddress'
description: Employer address
EmploymentStatus:
allOf:
- $ref: '#/components/schemas/AEInsuranceEmploymentStatus'
description: Employment status
EmploymentStartDate:
type: string
format: date
description: Employment start date
EmploymentLocation:
type: string
minLength: 1
maxLength: 70
description: Employment location
NatureOfEmployerBusiness:
type: string
minLength: 1
maxLength: 140
description: Nature of employer business
Designation:
type: string
SourceOfIncome:
type: string
minLength: 1
maxLength: 70
description: Source of income as a free form description
IncomeCurrency:
type: string
pattern: '[A-Z]{3}'
description: Income currency
MonthlyIncome:
type: number
format: decimal
description: Monthly income in AED
AnnualIncome:
type: number
format: decimal
description: Annual income in AED
additionalProperties: false
AEInsuranceIdentificationDetails:
type: object
properties:
EidNumber:
type: string
pattern: ^784-?[0-9]{4}-?[0-9]{7}-?[0-9]{1}$
description: Emirates identification number
EidExpiryDate:
type: string
format: date
description: Emirates ID expiry date
PassportIssueCountry:
allOf:
- $ref: '#/components/schemas/AEInsuranceCountryCode'
pattern: ^[A-Z]{2,2}$
description: Passport issuing country code
PassportNumber:
type: string
pattern: ^[A-Z0-9]+$
description: Passport number
PassportIssueDate:
type: string
format: date
description: Passport issue date
PassportExpiryDate:
type: string
format: date
description: Passport expiry date
VisaNumber:
type: string
pattern: ^[0-9]+$
description: Visa number
VisaIssueCountry:
allOf:
- $ref: '#/components/schemas/AEInsuranceCountryCode'
pattern: ^[A-Z]{2,2}$
description: Visa issuing country code
VisaIssueDate:
type: string
format: date
description: Visa issue date
VisaExpiryDate:
type: string
format: date
description: Visa expiry date
UaeDrivingLicenseNumber:
type: string
description: UAE driving license number
UaeDrivingLicenseIssueDate:
type: string
format: date
description: UAE driving license issue date
UAEDrivingLicenseIssuingEmirate:
allOf:
- $ref: '#/components/schemas/AEInsuranceEmirate'
description: Emirate where driving license was issued
MulkiyaCard:
type: string
format: base64
description: Mulkiya card as a Base64-encoded PDF document
HomeCountryDrivingLicenseNumber:
type: string
minLength: 1
maxLength: 70
description: Home driving license number
additionalProperties: false
PreviousClaims:
type: object
required:
- ClaimDescription
properties:
ClaimAmount:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Claim amount and currency
ClaimDescription:
type: string
minLength: 1
maxLength: 140
description: Description of claim using free form text
additionalProperties: false
AEInsuranceEducationBackground:
type: string
enum:
- HighSchool
- Undergraduate
- Postgraduate
- Doctorate
- Other
AEInsuranceReligion:
type: string
enum:
- Christian
- Muslim
- Jewish
- Hindu
- Buddhist
- Other
AEInsuranceSalutation:
type: string
enum:
- Mr
- Mrs
- Ms
- Miss
- Dr
- Prof
- Other
AEInsuranceEmploymentStatus:
type: string
enum:
- Employed
- SelfEmployed
- Unemployed
- Retired
- Other
Amount:
type: number
CurrencyCode:
type: string
pattern: ^[A-Z]{3}$
AEInsuranceClaimStatus:
type: string
enum:
- Submitted
- Authorized
- Rejected
- Pending
- Completed
AEMotorInsurancePolicyAdjustments:
type: object
required:
- Date
properties:
Date:
type: string
format: date
description: Date of adjustment
PremiumAdjustment:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Premium adjustment amount and currency
CoverageAdjustment:
allOf:
- $ref: '#/components/schemas/AEAmountAndCurrency'
description: Coverage adjustment amount and currency
Reason:
type: string
minLength: 1
maxLength: 140
description: Reason for adjustment
description: Policy adjustments
additionalProperties: false
AEInsuranceGender:
type: string
enum:
- Male
- Female
- Other
AEInsuranceMartitalStatus:
type: string
enum:
- Single
- Married
- Divorced
- Widowed
- Separated
- Other
uuid:
type: string
minLength: 1
maxLength: 128
Meta:
type: object
required:
- totalPages
properties:
totalPages:
type: integer
description: Total number of pages where a result set is paginated
example: 1
additionalProperties: false
Error:
type: object
properties:
errorCode Document Structure
The documentation contains a number of references of the form `XXX-999-999`. These are references
to test case numbers in the Ozone Connect Test Harness that financial institutions may use to test their Ozone Connect implementations.
version: Release 2024.34
servers:
- url: https://<your-ozone-connect-server>
tags:
- name: health-check
description: |
APIs that should be implemented by Financial Instituations to expose health check end-points
paths:
/hello:
get:
operationId: hello
summary: check connectivity without a mutual tls check
tags:
- health-check
type: string description:
description: Error code identifyingCheck theconnectivity problemwithout occureda mutual tls CheckDetails.
errorMessage: This health check is used type:to stringcheck that the end-to-end network connectivity is working as expected. This description:is Messagea describingsimple whathealth problemcheck hasthat occureddoes not require mutual TLS.
propagateError: responses:
type'200': boolean
description: optionalOK
field if error want to propagate parameterscontent:
providerId: name: o3-provider-idapplication/json:
in: header schema:
type: string required: true
$ref: '#/components/schemas/HealthCheck200Response'
/hello-mtls:
descriptionget:
Identifier for the ASPSP that the requestoperationId: ishelloMtls
targetted to callerOrgIdsummary: check connectivity including mtls
name: o3-caller-org-id tags:
in: header - health-check
schema: description:
type: string Check connectivity including required:mutual trueTLS CheckDetails.
description: An identifier for theThis organizationhealth callingcheck theis APIused to check that the callerClientId:
name: o3-caller-client-idend-to-end network connectivity is working as expected including mutual tls.
inresponses:
header schema'200':
type: string description: OK
required: true description: An identifier for the OIDC clientId calling the APIcontent:
callerSoftwareStatementIdapplication/json:
name: o3-caller-software-statement-id inschema:
header schema: type$ref: string'#/components/schemas/HealthCheck200Response'
required: true '401':
description: An identifier for the software statementdescription: callingReturned thewhen APImtls connection could not be established
apiUri: name: o3-api-uri content:
in: header schemaapplication/json:
type: string schema:
required: true description: The parameterised URL of the API being called by the caller
$ref: '#/components/schemas/HealthCheck4xxResponse'
/echo-cert:
apiOperationget:
nameoperationId: o3-api-operationechoCert
intags:
header schema: - health-check
typesummary: Provides stringinformation about the client cert that the required:server truereceived
description:
The API operation carried out by the caller (e.g. GET, POST, PUT, DELETE, PATCH)
consentId:
This health check endpoint assists in debugging mutual tls client issues.
name: o3-consent-id The health check returns in:information headerabout the client certificate and the issuer schema:of the client certificate that the server received.
type: string required:Where truemtls cannot be established, the server will description:return Thea consentId401 forresponse.
which this call is being made responses:
callerInteractionId: '200':
name: o3-caller-interaction-id indescription: headerOK
schema: content:
type: string application/json:
required: true description: The interaction ID passed in byschema:
the caller, if any ozoneInteractionId: name: o3-ozone-interaction-id$ref: '#/components/schemas/HealthCheckCertResponse'
in: header '401':
schema: description: Returned when type:mtls stringconnection could not be established
required: true descriptioncontent:
An interaction ID generated by Ozone if the caller did not send in one. If the callerInteractionId is specified, this takes the same value. application/json:
psuIdentifierschema:
name: o3-psu-identifier in$ref: header
'#/components/schemas/HealthCheck4xxResponse'
components:
schemas:
schema: HealthCheck200Response:
type: stringobject
requireddescription:
true description: ASuccesful Base64response encodedon representationa ofhealth thecheck
psuIdentifier JSON object. properties:
aspspId: nameconnectionEstablished: o3-aspsp-id
intype: headerboolean
schemamtlsStatus:
type: string
required: true enum:
- deprecated:established
true description: - not-established
Identifier for the financial institution that the request is targetted to.- not-checked
This header is deprecatedhostName:
and will be removed in a future version of Ozone Connect.type: Usestring
`o3-provider-id`
instead. pagerequired:
name: page - connectionEstablished
in: query - mtlsStatus
description: Page of results to request (standard pagination)- hostName
requiredHealthCheck4xxResponse:
false schematype: object
defaultdescription:
1 Response type:when integerconnection could not be established
style: form properties:
page-size: nameerrorMessage:
page-size intype: string
query
descriptionrequired:
Page size to request. Default is 25 (standard pagination)- errorMessage
requiredHealthCheckCertResponse:
false schemaproperties:
defaultconnectionEstablished:
25 type: integerboolean
style: form mtlsStatus:
InsurancePolicyId: nametype: InsurancePolicyIdstring
in: path enum:
required: true description: Unique- identifierestablished
for a given insurance policy schema: - not-established
$ref: '#/components/schemas/uuid' responseshostName:
InsurancePoliciesGetResponse: descriptiontype: Thestring
request
has succeeded. headersclientCertificate:
x-fapi-interaction-id: type: object
schemaproperties:
typesubject:
string content: application/jsontype: string
schema: issuer:
$ref: "#/components/schemas/InsurancePoliciesGetResponseBody" InsurancePolicyGetResponsetype: string
description: The request has succeeded. required:
headers: x-fapi-interaction-id: subject
schema: - issuer
typerequired: string
content: - connectionEstablished
application/json: - mtlsStatus
schema: - hostName
- $ref: "#/components/schemas/InsurancePolicyGetResponseBody"clientCertificate
|