{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/citi/main/json-schema/citi-get-link-account-response-schema.json", "title": "GetLinkAccountResponse", "description": "Response body containing linked account details.", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/citi-linkaccount-api-openapi.yml#/components/schemas/Get-Link-Account-Response", "type": "array", "items": { "$ref": "#/$defs/Creditor-Detail" }, "$defs": { "Address-Details": { "title": "AddressDetails", "type": "object", "description": "Address information for the bank.", "properties": { "city": { "type": "string", "title": "city", "description": "City.", "minLength": 1, "maxLength": 128 }, "state": { "type": "string", "title": "state", "description": "State.", "minLength": 1, "maxLength": 128 }, "country_code": { "allOf": [ { "$ref": "#/$defs/Country-Code" } ], "title": "country_code", "description": "Country code." }, "address_line": { "type": "string", "title": "address_line", "description": "Detailed address of the bank.", "minLength": 1, "maxLength": 256 } } }, "Common-Creditor": { "title": "CommonCreditor", "type": "object", "description": "This section contains the details information of creditor.", "properties": { "type": { "type": "string", "title": "type", "description": "Type of creditor.", "enum": [ "00" ] }, "name": { "allOf": [ { "$ref": "#/$defs/Name" }, { "description": "Name of the account." } ] }, "contact_number": { "type": "string", "title": "contact_number", "description": "Full contact number.", "minLength": 1, "maxLength": 32 }, "contact_prefix": { "type": "string", "title": "contact_prefix", "description": "International telephone area code.", "minLength": 1, "maxLength": 32 }, "email": { "type": "string", "title": "email", "description": "Email address of the merchant.", "minLength": 1, "maxLength": 32 } } }, "Country-Code": { "type": "string", "title": "country_code", "pattern": "^[A-Z]{2,2}$", "description": "Country code." }, "Created-Time": { "type": "string", "format": "date-time", "description": "Date and time of the file created. Pattern YYYY-MM-DDTHH:mm:ssZ", "title": "created_time" }, "Creditor-Account-Details": { "title": "CreditorAccountDetails", "type": "object", "description": "This section contains the details information of account.", "properties": { "holder_type": { "type": "string", "title": "holder_type", "description": "The type of account holder.", "enum": [ "PERSONAL", "COMPANY" ] }, "holder_contact_number": { "type": "string", "title": "holder_contact_number", "description": "The full contact number, including the country code if mobile.", "minLength": 1, "maxLength": 32 }, "number": { "type": "string", "title": "number", "description": "Unique account number.", "minLength": 1, "maxLength": 64 }, "name": { "allOf": [ { "$ref": "#/$defs/Name" }, { "description": "Name of the account." } ] }, "currency_code": { "allOf": [ { "$ref": "#/$defs/Currency-Code" } ], "title": "currency_code", "description": "Currency of the account (3-character ISO code)." }, "iban": { "type": "string", "title": "iban", "description": "International Bank Account Number (IBAN). IBAN is not applicable for CN and HK.", "minLength": 1, "maxLength": 32 }, "document_type": { "type": "string", "title": "document_type", "description": "Type of identity document (ID). One of the following 00 Chinese national ID card 01 Chinese residence permit 02 Passport 03 ID card of Hong Kong, Macao or Taiwan 04 Residence permit of Hong Kong, Macao and Taiwan 05 Hong Kong and Macao travel permit 06 Other national ID card 07 Other residence permit", "enum": [ "CHINESE_NATIONAL_ID_CARD", "CHINESE_RESIDENCE_PERMIT", "PASSPORT", "ID_CARD_OF_HONGKONG_MACAO_OR_TAIWAN", "RESIDENCE_PERMIT_OF_HONGKONG_MACAO_AND_TAIWAN", "HONGKONG_AND_MACAO_TRAVEL_PERMIT", "OTHER_NATIONAL_ID_CARD", "OTHER_RESIDENCE_PERMIT" ] }, "document_number": { "type": "string", "title": "document_number", "description": "Account holder's ID number.", "minLength": 1, "maxLength": 64 } } }, "Creditor-Address-Details": { "title": "CreditorAddressDetails", "description": "Address information for the creditor.", "allOf": [ { "$ref": "#/$defs/Address-Details" }, { "$ref": "#/$defs/Partial-Address" }, { "type": "object", "title": "Creditor-Address-Details" } ] }, "Creditor-Bank-Details": { "title": "CreditorBankDetails", "type": "object", "description": "This section contains the details information of bank.", "properties": { "name": { "allOf": [ { "$ref": "#/$defs/Name" }, { "description": "Name of the bank.", "minLength": 1, "maxLength": 256 } ] }, "code": { "type": "string", "title": "code", "description": "Bank code.", "minLength": 1, "maxLength": 32 }, "branch_name": { "type": "string", "title": "branch_name", "description": "Branch name where the account is held.", "minLength": 1, "maxLength": 128 }, "branch_number": { "type": "string", "title": "branch_number", "description": "Branch code where the account is held.", "minLength": 1, "maxLength": 32 }, "swift_code": { "type": "string", "title": "swift_code", "description": "SWIFT BIC (Bank Identifier Code).", "minLength": 1, "maxLength": 64 }, "routing_number": { "type": "string", "title": "routing_number", "description": "Routing code.", "minLength": 1, "maxLength": 64 }, "ifsc_code": { "type": "string", "title": "ifsc_code", "description": "Indian Financial System Code (IFSC).", "minLength": 1, "maxLength": 64 }, "sort_code": { "type": "string", "title": "sort_code", "description": "Sort code.", "minLength": 1, "maxLength": 32 } } }, "Creditor-Detail": { "title": "CreditorDetail", "type": "object", "description": "Response body containing creditor's details.", "properties": { "creditor_id": { "$ref": "#/$defs/Creditor-Id" }, "status": { "allOf": [ { "$ref": "#/$defs/Status" } ], "title": "status", "description": "The status of creditor validation. PENDING; AVAILABLE; DECLINED" }, "message": { "$ref": "#/$defs/Message" }, "created_time": { "$ref": "#/$defs/Created-Time" }, "creditor_account": { "$ref": "#/$defs/Get-Creditor-Account" }, "creditor_bank": { "$ref": "#/$defs/Get-Creditor-Bank" }, "creditor": { "$ref": "#/$defs/Get-Creditor" }, "file_id": { "$ref": "#/$defs/File-Id" } } }, "Creditor-Id": { "type": "string", "title": "creditor_id", "description": "The unique creditor identifier assigned by payment service provider.", "minLength": 1, "maxLength": 36 }, "Currency-Code": { "type": "string", "title": "currency_code", "description": "The currency code in the transaction.", "pattern": "^[A-Z]{3}$" }, "File-Id": { "type": "string", "description": "Unique identifier for the document uploaded.", "title": "file_id", "minLength": 1, "maxLength": 128 }, "Get-Creditor": { "title": "GetCreditor", "description": "This section contains the details information of creditor.", "allOf": [ { "$ref": "#/$defs/Common-Creditor" }, { "type": "object", "title": "Get-Creditor", "properties": { "address": { "$ref": "#/$defs/Creditor-Address-Details" } } } ] }, "Get-Creditor-Account": { "title": "GetCreditorAccount", "description": "This section contains the details information of bank.", "allOf": [ { "$ref": "#/$defs/Creditor-Account-Details" }, { "type": "object", "title": "Get-Creditor-Account", "properties": { "type": { "type": "string", "title": "type", "description": "Type of the bank.", "minLength": 1, "maxLength": 64 } } } ] }, "Get-Creditor-Bank": { "title": "GetCreditorBank", "description": "This section contains the details information of bank.", "allOf": [ { "$ref": "#/$defs/Creditor-Bank-Details" }, { "type": "object", "title": "Get-Creditor-Bank", "properties": { "type": { "type": "string", "title": "type", "description": "Type of the bank.", "minLength": 1, "maxLength": 64 }, "address": { "$ref": "#/$defs/Address-Details" } } } ] }, "Message": { "type": "string", "description": "Description of the status.", "title": "message", "minLength": 1, "maxLength": 500 }, "Name": { "type": "string", "title": "name", "minLength": 1, "maxLength": 128 }, "Partial-Address": { "title": "PartialAddress", "description": "Address information for the creditor.", "type": "object", "properties": { "street_name": { "type": "string", "title": "street_name", "description": "Street name.", "minLength": 1, "maxLength": 128 }, "postal_code": { "type": "string", "title": "postal_code", "description": "Postal code.", "minLength": 1, "maxLength": 16 } } }, "Status": { "type": "string", "description": "Status of the request.", "title": "status", "minLength": 1, "maxLength": 64 } } }