---
swagger: "2.0"
info:
description: API Category description
title: Customers
version: 1.0.0-rev1
x-ibm-name: customers
basePath: /api
schemes:
- https
x-ibm-configuration:
enforced: true
phase: realized
testable: false
externalDocs: []
attachments: []
tags: []
definitions:
CustomerPhoneResponse:
properties:
phones:
type: array
items:
$ref: '#/definitions/Phone'
CustomerAddressResponse:
properties:
addressList:
type: array
items:
$ref: '#/definitions/Address'
Email:
properties:
emailAddress:
description: Email address of the customer
type: string
example: javier123@yahoo.com
emailType:
description: 'The type of email. This is a reference data field. Please use
/v1/apac/utilities/referenceData/{emailType} resource to get valid value
of this field with description. You can use emailType as the referenceCode
parameter to retrieve the values '
type: string
example: PERSONAL
preferredEmailFlag:
description: Flag to indicate the preferred Email.
type: boolean
example: "true"
required:
- emailAddress
Address:
properties:
city:
description: City
type: string
example: SINGAPORE
addressType:
description: Type of the address. This is a reference data field. Please use
/v1/apac/utilities/referenceData/{addressType} resource to get valid value
of this field with description. You can use addressType as the referenceCode
parameter to retrieve the values.
type: string
example: PRIMARY_ADDRESS
postalCode:
description: Postal code the mailing address
type: string
example: "520189"
addressline3:
description: address line3 of the mailing address
type: string
example: Orchard Avenue 2
addressline2:
description: address line2 of the mailing address
type: string
example: '#99-99 MACDONALD HOUSE'
addressline1:
description: address line1 of the mailing address
type: string
example: 40A ORCHARD ROAD
state:
description: State
type: string
example: SINGAPORE
countryName:
description: Country Name
type: string
example: SINGAPORE
addressline4:
description: address line4 of the mailing address
type: string
example: Street 65
required:
- addressline1
- addressType
Phone:
properties:
phoneType:
description: The type of phone. This is a reference data field. Please use
/v1/apac/utilities/referenceData/{phoneType} resource to get valid value
of this field with description. You can use phoneType as the referenceCode
parameter to retrieve the values
type: string
example: HOME
areaCode:
description: Area code of telephone number
type: string
example: O
extension:
description: Extension of telephone number
type: string
example: O
phoneNumber:
description: The phone number of a customer
type: string
example: "4567234512"
phoneCountryCode:
description: Country code in ISO 3166 format
type: string
example: "34"
required:
- phoneType
- phoneNumber
CustomerParticulars:
properties:
names:
type: array
items:
$ref: '#/definitions/Name'
gender:
description: Gender/Sex. Valid values are MALE, FEMALE for individual customer
types and OTHERS for corporate customers.This is a reference data field.
Please use /v1/apac/utilities/referenceData/{gender} resource to get valid
value of this field with description. You can use gender as the referenceCode
parameter to retrieve the values.
type: string
prefix:
description: The prefix of the customer s name.
type: string
example: Mr.
suffix:
description: The suffix of the customer s name.
type: string
example: III
CustomerEmailResponse:
properties:
emails:
type: array
items:
$ref: '#/definitions/Email'
CustomerParticularResponse:
properties:
customerType:
description: Type of the customer. This is applicable only for Individual
customers.This is a reference data field. Please use /v1/apac/utilities/referenceData/{customerType}
resource to get valid value of this field with description. You can use
customerType as the referenceCode parameter to retrieve the values.
type: string
example: INDIVIDUAL
customerParticulars:
$ref: '#/definitions/CustomerParticulars'
customerSegment:
description: Type of the customer. This is applicable only for Individual
customers.This is a reference data field. Please use /v1/apac/utilities/referenceData/{customerSegment}
resource to get valid value of this field with description. You can use
customerSegment as the referenceCode parameter to retrieve the values.
type: string
example: BLUE
required:
- customerSegment
CustomerProfileResponse:
properties:
emails:
type: array
items:
$ref: '#/definitions/Email'
customerType:
description: Type of the customer. This is applicable only for Individual
customers.This is a reference data field. Please use /v1/apac/utilities/referenceData/{customerType}
resource to get valid value of this field with description. You can use
customerType as the referenceCode parameter to retrieve the values.
type: string
example: INDIVIDUAL
customerParticulars:
$ref: '#/definitions/CustomerParticulars'
customerSegment:
description: Type of the customer. This is applicable only for Individual
customers.This is a reference data field. Please use /v1/apac/utilities/referenceData/{customerSegment}
resource to get valid value of this field with description. You can use
customerSegment as the referenceCode parameter to retrieve the values.
type: string
example: BLUE
addressList:
type: array
items:
$ref: '#/definitions/Address'
phones:
type: array
items:
$ref: '#/definitions/Phone'
required:
- customerSegment
ErrorResponse:
properties:
code:
description: Error code which qualifies the error
type: string
details:
description: Human readable explanation specific to the occurrence of the
problem
type: string
location:
description: The name of the field that resulted in the error
type: string
type:
description: Invalid - Request did not confirm to the specification and was
unprocessed and rejected. Please fix the value and try again
type: string
enum:
- error
- warn
- invalid
- fatal
moreInfo:
description: URI to human readable documentation of the error
type: object
required:
- type
- code
Name:
properties:
nameType:
description: Type of the name. This is a reference data field. Please use
/v1/apac/utilities/referenceData/{nameType} resource to get valid value
of this field with description. You can use nameType as the referenceCode
parameter to retrieve the values.
type: string
example: LOCAL_NAME
firstName:
description: The first name of the customer. Also known as first name
type: string
example: Javier
lastName:
description: The last name of the customer. Also known as last name
type: string
example: de Cuellar
fullName:
description: Full name of the customer.
type: string
example: Javier Perez de Cuellar
middleName:
description: Middle name of the customer.
type: string
example: Perez
required:
- firstName
securityDefinitions:
API Key:
type: apiKey
name: X-IBM-Client-Id
in: header
description: ""
API Key (Query):
type: apiKey
name: client_id
in: query
description: ""
paths:
/v1/customers/profiles/basic:
get:
description: This API is used to retrieve customer particulars
tags:
- Customers
summary: Retrieve customer particulars.
parameters:
- description: Access token to authenticate your request.
name: Authorization
type: string
required: true
in: header
- description: 128 bit random UUID generated uniquely for every request.
name: uuid
type: string
required: true
in: header
- description: Content-Type that are acceptable for the response.
name: Accept
type: string
required: true
in: header
- description: Client ID generated during application registration.
name: client_id
type: string
required: true
in: header
responses:
200:
schema:
$ref: '#/definitions/CustomerParticularResponse'
description: Successful operation.
400:
schema:
$ref: '#/definitions/ErrorResponse'
description:
Type | Code | Details |
invalid | invalidRequest | Missing
or invalid parameters |
401:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | unAuthorized | Authorization
credential is missing or invalid |
403:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | accessNotConfigured | Access
is not configured for this resource |
404:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | resourceNotFound | Empty
resource/resource not found |
500:
schema:
$ref: '#/definitions/ErrorResponse'
description: fatal | serverUnavailable | The
request failed due to an internal error |
security:
- API Key (Query): []
- API Key: []
/v1/customers/profiles:
get:
description: This API is used to retrieve customer details including personal
particulars ,address,phones and emails details
tags:
- Tag
summary: Retrieve customer complete personal details
parameters:
- description: Access token to authenticate your request.
name: Authorization
required: true
type: string
in: header
- description: 128 bit UUID that you generate for every request
name: uuid
required: true
type: string
in: header
- description: Content-Type that are acceptable for the response
name: Accept
required: true
type: string
in: header
- description: Client ID generated during application registration.
name: client_id
required: true
type: string
in: header
responses:
200:
schema:
$ref: '#/definitions/CustomerProfileResponse'
description: Successful operation.
400:
schema:
$ref: '#/definitions/ErrorResponse'
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid parameters |
401:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | unAuthorized | Authorization
credentials are missing or invalid |
403:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | accessNotConfigured | Access
is not configured for this resource |
404:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | resourceNotFound | Empty
resource/resource not found |
500:
schema:
$ref: '#/definitions/ErrorResponse'
description: fatal | serverUnavailable | The
request failed due to an internal error |
security:
- API Key (Query): []
- API Key: []
/v1/customers/profiles/emails:
put:
description: This API is used to update customer email address
tags: []
summary: Update Customer Email Address
parameters:
- schema:
$ref: '#/definitions/CustomerEmailUpdateRequest'
description: ""
name: body
in: body
- description: Access token to authenticate your request
name: Authorization
required: false
type: string
in: header
- description: 128 bit random UUID generated uniquely for every request
name: uuid
required: false
type: string
in: header
- description: Content-Type that are acceptable for the response
name: Accept
required: false
type: string
in: header
- description: Client ID generated during application registration
name: client_id
required: false
type: string
in: header
- description: application/json
name: Content-Type
required: false
type: string
in: header
responses:
200:
description: Successful operation
400:
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid Parameters |
error | exceededMaximumAllowedEmails | Exceeded
maximum allowed emails |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: error | unAuthorized | Authorization
credentials are missing or invalid |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: error | accessNotConfigured | The
request operation is not configured to access this resource |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: error | resourceNotFound | Empty
resource/resource not found |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: fatal | serverUnavailable | The
request failed due to an internal error |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
security:
- API Key (Query): []
- API Key: []
get:
description: This API is used to retrieve customer email address details.
tags:
- Customer Service
summary: To retrieve customer email address details.
parameters:
- description: Access token to authenticate your request.
name: Authorization
required: true
type: string
in: header
- description: 128 bit random UUID generated uniquely for every request.
name: uuid
required: true
type: string
in: header
- description: Content-Type that are acceptable for the response.
name: Accept
required: true
type: string
in: header
- description: Client ID generated during application registration.
name: client_id
required: true
type: string
in: header
responses:
200:
schema:
$ref: '#/definitions/CustomerEmailResponse'
description: Successful operation.
400:
schema:
$ref: '#/definitions/ErrorResponse'
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid parameters |
401:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | unAuthorized | Authorization
credential is missing or invalid |
403:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | accessNotConfigured | Access
is not configured for this resource |
404:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | resourceNotFound | Empty
resource/resource not found |
500:
schema:
$ref: '#/definitions/ErrorResponse'
description: fatal | serverUnavailable | The
request failed due to an internal error |
security:
- API Key (Query): []
- API Key: []
/v1/customers/profiles/addresses:
post:
description: This API is used to update customer address details
tags: []
summary: Update customer address details
parameters:
- schema:
$ref: '#/definitions/CustomerAddressUpdateRequest'
description: ""
name: body
in: body
- description: Access token to authenticate your request
name: Authorization
required: false
type: string
in: header
- description: 128 bit random UUID generated uniquely for every request
name: uuid
required: false
type: string
in: header
- description: Content-Type that are acceptable for the response
name: Accept
required: false
type: string
in: header
- description: Client ID generated during application registration
name: client_id
required: false
type: string
in: header
- description: application/json
name: Content-Type
required: false
type: string
in: header
responses:
200:
description: Successful operation
headers: []
examples: []
201:
description: ""
400:
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid Parameters |
error | exceededMaximumAllowedAddresses | Exceeded
maximum allowed addresses |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: error | unAuthorized | Authorization
credentials are missing or invalid |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: error | accessNotConfigured | The
request operation is not configured to access this resource |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: fatal | serverUnavailable | The
request failed due to an internal error |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
security:
- API Key (Query): []
- API Key: []
get:
description: API description
tags:
- Customers
summary: API summary
parameters:
- description: Access token to authenticate your request.
name: Authorization
required: true
type: string
in: header
- description: 128 bit UUID that you generate for every request
name: uuid
required: true
type: string
in: header
- description: Content-Type that are acceptable for the response
name: Accept
required: true
type: string
in: header
- description: Client ID generated during application registration.
name: client_id
required: true
type: string
in: header
responses:
200:
schema:
$ref: '#/definitions/CustomerAddressResponse'
description: Successful operation.
400:
schema:
$ref: '#/definitions/ErrorResponse'
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid parameters |
401:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | unAuthorized | Authorization
credentials are missing or invalid |
403:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | accessNotConfigured | Access
is not configured for this resource |
404:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | resourceNotFound | Empty
resource/resource not found |
500:
schema:
$ref: '#/definitions/ErrorResponse'
description: fatal | serverUnavailable | The
request failed due to an internal error |
security:
- API Key (Query): []
- API Key: []
/v1/customers/profiles/phoneNumbers:
put:
description: This API is used to update customer phone number
tags: []
summary: Update Customer Phone Number
parameters:
- schema:
$ref: '#/definitions/CustomerPhoneUpdateRequest'
description: ""
name: body
in: body
- description: Access token to authenticate your request
name: Authorization
required: false
type: string
in: header
- description: 128 bit random UUID generated uniquely for every request
name: uuid
required: false
type: string
in: header
- description: Content-Type that are acceptable for the response
name: Accept
required: false
type: string
in: header
- description: Client ID generated during application registration
name: client_id
required: false
type: string
in: header
- description: application/json
name: Content-Type
required: false
type: string
in: header
responses:
200:
description: Successful operation
400:
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid Parameters |
error | exceededMaximumAllowedPhones | Exceeded
maximum allowed phones |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: error | unAuthorized | Authorization
credentials are missing or invalid |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: error | accessNotConfigured | The
request operation is not configured to access this resource |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: error | resourceNotFound | Empty
resource/resource not found |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: fatal | serverUnavailable | The
request failed due to an internal error |
headers: []
examples: []
schema:
$ref: '#/definitions/ErrorResponse'
security:
- API Key (Query): []
- API Key: []
get:
description: This API is used to retrieve customer phone numbers.
tags:
- Customer Service
summary: To retrieve customer phone numbers
parameters:
- description: Access token to authenticate your request.
name: Authorization
required: true
type: string
in: header
- description: 128 bit random UUID generated uniquely for every request.
name: uuid
required: true
type: string
in: header
- description: Content-Type that are acceptable for the response.
name: Accept
required: true
type: string
in: header
- description: Client ID generated during application registration.
name: client_id
required: true
type: string
in: header
responses:
200:
schema:
$ref: '#/definitions/CustomerPhoneResponse'
description: Successful operation.
400:
schema:
$ref: '#/definitions/ErrorResponse'
description: Type | Code | Details |
invalid | invalidRequest | Missing
or invalid parameters |
401:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | unAuthorized | Authorization
credential is missing or invalid |
403:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | accessNotConfigured | Access
is not configured for this resource |
404:
schema:
$ref: '#/definitions/ErrorResponse'
description: error | resourceNotFound | Empty
resource/resource not found |
500:
schema:
$ref: '#/definitions/ErrorResponse'
description: fatal | serverUnavailable | The
request failed due to an internal error |
security:
- API Key (Query): []
- API Key: []
security:
- API Key (Query): []
- API Key: []
x-ibm-endpoints:
- endpointUrl: https://emea.sandbox.api.citi.com/gcb
description: Custom Gateway API Endpoint
type:
- production
- development
...