Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/jp-morgan-chase-communication-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Consumer Profile Management Communication API
description: The consumer profile management API provides merchant functionality to create, store, update, and maintain customer or consumer profiles.
version: 2.4.2
contact:
name: Consumer Profile Management API Support
url: https://developer.payments.jpmorgan.com/contact
servers:
- url: https://profiles-api.merchant.jpmorgan.com/api/v2/mmp
description: PRODUCTION - OAUTH
- url: https://cat-profiles-api.merchant.jpmorgan.com/api/v2/mmp
description: CLIENT TESTING - OAUTH
- url: https://api-mock.payments.jpmorgan.com/api/v2/mmp
description: MOCK
security:
- BearerAuth: []
tags:
- name: Communication
description: Communication Update
paths:
/consumer-profiles/{consumer-profile-id}/communication:
post:
summary: Add a new communication to an existing consumer profile
operationId: v1PostConsumerCommunication
tags:
- Communication
description: Add a new communication to an existing consumer profile.
parameters:
- name: merchantIdentifier
in: header
required: true
schema:
type: string
description: Identifies a unique entity for transaction processing at the lowest level of the account hierarchy of the backend proprietary merchant acquiring processing platform. This level organizes transaction types for submission, funding, and reporting.
examples:
Create A New Communication:
value: '993371390059'
- name: correlationIdentifier
in: header
schema:
type: string
description: A unique key produced by the initial entry of a customer by the originating source system, that will provide a linkage between independent events. This will allow events from multiple applications to be linked together to represent a single string of events or a customer contact experience. This field should be considered generic (aka ability to use for document event tracking) to allow correlation of events not specific to customer contacts. This is unique per customer experience and should be passed between applications.
examples:
Create A New Communication:
value: 6d66f2e5-ad81-4848-9884-d5ff32ee7690
- name: requestIdentifier
in: header
schema:
type: string
description: Unique request identifier to track the request through application programming interface(API) .
- name: userIdentifier
in: header
schema:
type: string
description: The identifier (id) of the user who created the object or inserted the row. This could be the Firm’s Standard Identifier, or the identifier of a batch/functional process.
examples:
Create A New Communication:
value: test
- name: consumer-profile-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of a merchant's customer profile
examples:
Create A New Communication:
value: PACJGQ
- name: applicationIdentifier
in: header
schema:
type: string
description: Identifies a unique occurrence of an application which can be a combination of in-house-developed software and/or vendor products that are designed to process, store or transmit the Firm's data.
requestBody:
description: Add a new Payment Method to an existing Consumer Profile
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/communication'
examples:
Create A New Communication:
value:
phoneList:
- phoneNumber: '8888888828'
countryCode: '1'
phoneNumberType: Home
emailList:
- emailAddress: john.doe.x@gmail.com
emailAddressType: Home
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/consumerProfileResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/adfsError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'408':
description: Timeout Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'504':
description: Gateway Timeout
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
/consumer-profiles/{consumer-profile-id}/communication/{communication-id}/default:
patch:
summary: Update a communication method to default on an existing consumer profile
operationId: v1PatchConsumerCommunicationDefaultById
tags:
- Communication
description: Update default communication for a profile.
parameters:
- name: consumer-profile-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of a merchant's customer profile
examples:
Update Existing Communication:
value: 80G39P
- name: merchantIdentifier
in: header
required: true
schema:
type: string
description: Identifies a unique entity for transaction processing at the lowest level of the account hierarchy of the backend proprietary merchant acquiring processing platform. This level organizes transaction types for submission, funding, and reporting.
examples:
Update Existing Communication:
value: '993371390059'
- name: communication-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of the type of payment accepted by a level of the hierarchy of the merchant acquiring account.
examples:
Update Existing Communication:
value: HH04423498968
- name: correlationIdentifier
in: header
schema:
type: string
description: A unique key produced by the initial entry of a customer by the originating source system, that will provide a linkage between independent events. This will allow events from multiple applications to be linked together to represent a single string of events or a customer contact experience. This field should be considered generic (aka ability to use for document event tracking) to allow correlation of events not specific to customer contacts. This is unique per customer experience and should be passed between applications.
examples:
Update Existing Communication:
value: 6d66f2e5-ad81-4848-9884-d5ff32ee7690
- name: requestIdentifier
in: header
schema:
type: string
description: Unique request identifier to track the request through application programming interface(API) .
- name: userIdentifier
in: header
schema:
type: string
description: The identifier (id) of the user who created the object or inserted the row. This could be the Firm’s Standard Identifier, or the identifier of a batch/functional process.
examples:
Update Existing Communication:
value: test
- name: applicationIdentifier
in: header
schema:
type: string
description: Identifies a unique occurrence of an application which can be a combination of in-house-developed software and/or vendor products that are designed to process, store or transmit the Firm's data.
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/consumerProfileResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/adfsError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'408':
description: Timeout Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'504':
description: Gateway Timeout
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
/consumer-profiles/{consumer-profile-id}/communication/{communication-id}:
patch:
summary: Update a communication attributes based on communication id provided; either email or phone
operationId: v1PatchConsumerCommunicationById
tags:
- Communication
description: Update communication method for a profile.
parameters:
- name: consumer-profile-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of a merchant's customer profile
examples:
Update Existing Communication:
value: PACJGQ
- name: merchantIdentifier
in: header
required: true
schema:
type: string
description: Identifies a unique entity for transaction processing at the lowest level of the account hierarchy of the backend proprietary merchant acquiring processing platform. This level organizes transaction types for submission, funding, and reporting.
examples:
Update Existing Communication:
value: '993371390059'
- name: communication-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of the type of payment accepted by a level of the hierarchy of the merchant acquiring account.
examples:
Update Existing Communication:
value: HH04423498968
- name: correlationIdentifier
in: header
schema:
type: string
description: A unique key produced by the initial entry of a customer by the originating source system, that will provide a linkage between independent events. This will allow events from multiple applications to be linked together to represent a single string of events or a customer contact experience. This field should be considered generic (aka ability to use for document event tracking) to allow correlation of events not specific to customer contacts. This is unique per customer experience and should be passed between applications.
examples:
Update Existing Communication:
value: 6d66f2e5-ad81-4848-9884-d5ff32ee7690
- name: requestIdentifier
in: header
schema:
type: string
description: Unique request identifier to track the request through application programming interface(API) .
- name: userIdentifier
in: header
schema:
type: string
description: The identifier (id) of the user who created the object or inserted the row. This could be the Firm’s Standard Identifier, or the identifier of a batch/functional process.
examples:
Update Existing Communication:
value: test
- name: applicationIdentifier
in: header
schema:
type: string
description: Identifies a unique occurrence of an application which can be a combination of in-house-developed software and/or vendor products that are designed to process, store or transmit the Firm's data.
requestBody:
description: Update a communication attributes based on communication id provided; either email or phone
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/communicationUpdate'
examples:
Update Existing Communication:
value:
email:
emailAddress: john.doe.x@gmail.com
emailAddressType: Home
phone:
phoneNumber: '8008887124'
countryCode: '1'
phoneNumberType: Home
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/consumerProfileResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/adfsError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'408':
description: Timeout Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'504':
description: Gateway Timeout
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
delete:
summary: Delete a communication method
operationId: v1DeleteConsumerCommunicationById
tags:
- Communication
description: Delete a communication method on a consumer profile using the communication ID.
parameters:
- name: consumer-profile-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of a merchant's customer profile
examples:
Success:
value: PACJGQ
- name: merchantIdentifier
in: header
required: true
schema:
type: string
description: Identifies a unique entity for transaction processing at the lowest level of the account hierarchy of the backend proprietary merchant acquiring processing platform. This level organizes transaction types for submission, funding, and reporting.
examples:
Success:
value: '993371390059'
- name: communication-id
in: path
required: true
schema:
type: string
description: Identifies a unique occurrence of the type of payment accepted by a level of the hierarchy of the merchant acquiring account.
examples:
Success:
value: EE8141240230923
- name: correlationIdentifier
in: header
schema:
type: string
description: A unique key produced by the initial entry of a customer by the originating source system, that will provide a linkage between independent events. This will allow events from multiple applications to be linked together to represent a single string of events or a customer contact experience. This field should be considered generic (aka ability to use for document event tracking) to allow correlation of events not specific to customer contacts. This is unique per customer experience and should be passed between applications.
examples:
Success:
value: 6d66f2e5-ad81-4848-9884-d5ff32ee7690
- name: requestIdentifier
in: header
schema:
type: string
description: Unique request identifier to track the request through application programming interface(API) .
- name: userIdentifier
in: header
schema:
type: string
description: The identifier (id) of the user who created the object or inserted the row. This could be the Firm’s Standard Identifier, or the identifier of a batch/functional process.
examples:
Success:
value: test
- name: applicationIdentifier
in: header
schema:
type: string
description: Identifies a unique occurrence of an application which can be a combination of in-house-developed software and/or vendor products that are designed to process, store or transmit the Firm's data.
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/consumerProfileResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/adfsError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'408':
description: Timeout Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
'504':
description: Gateway Timeout
content:
application/json:
schema:
$ref: '#/components/schemas/messages'
components:
schemas:
middleName:
description: 'That part of an individual''s name generally positioned between the first and family names, as a second given name or a maternal surname. (NOTE: in some instances, an individual may have multiple middle names)'
type: string
pattern: '[\p{L}\p{P}0-9'' ]*$'
maxLength: 70
example: James
verificationResult:
description: card verification Result
type: object
readOnly: true
properties:
transactionDate:
description: Designates the hour, minute, seconds and date (if timestamp) or year, month, and date (if date) when the transaction (monetary or non-monetary) occurred.
type: string
transactionId:
description: Identifies a unique occurrence of a transaction.
type: string
messages:
$ref: '#/components/schemas/messages'
accountNumber:
description: The card or token number.
type: string
pattern: '[0-9]*'
minLength: 16
maxLength: 16
example: '4234555678909099'
writeOnly: true
validationMessage:
description: Object containing information about transaction validation.
type: object
required:
- code
- message
properties:
code:
$ref: '#/components/schemas/code'
message:
$ref: '#/components/schemas/message'
entity:
description: The name given to the module or program where the error was generated.
type: string
phone:
description: Phone Information
type: object
required:
- phoneNumber
- countryCode
properties:
phoneNumber:
description: 'A locator whose value identifies the formatted numeric address for routing voice or data communications via telephony, to reach a party. NOTE: Telephone number formats may vary; this field can include domestic and international telephone numbers.'
type: string
countryCode:
description: The telephone dialing prefix for a member country in the International Telecommunication Union (ITU) that is defined by the ITU-T E.164 standard. The code is a combination of one, two or three digits identifying a specific country, countries in an integrated numbering plan, or a specific geographic area.
type: string
phoneNumberType:
description: Codifies the type of formatted numeric address for routing voice or data communications via telephony to reach a party.
type: string
communicationIdentifier:
description: Internal Identifier generated by firm for each phone information for a consumer stored in the system.
type: string
readOnly: true
adfsError:
description: Object containing information about the active directory file system error.
type: object
required:
- errorSource
- errorCode
- errorDescription
properties:
errorSource:
description: The label of the component from where the error or warning originated.
type: string
example: APG-EDGE
errorCode:
description: Codifies a raised exception encountered by an internal or external system, sub-system, interface, job, module, or system component with which the web service application interfaces. In this instance it refers to the error raised when reporting job failed.
type: string
example: EDG00012
errorDescription:
description: The textual information of the code of the raised exception encountered by an internal or external system, sub-system, interface, job, module, or system component with which the web service application interfaces.
type: string
example: the signature could not be verified
billerDebitCardReferenceNumber:
description: The Firm identifier assigned to a debit card number at the instantiation of the debit card number that persists over time as the debit card number changes through the lost/stolen/fraud process. It links replacement debit card numbers with the originally assigned card number.
type: string
countryCode:
description: 'A code that identifies the Country, a Geographic Area, that is recognized as an independent political unit in world affairs. Note: This data element is a child of the Country Code CDE and valid values are based on ISO standards.'
type: string
pattern: ^[a-zA-Z]{2,3}$
minLength: 3
maxLength: 3
example: USA
bacs:
description: Object for BACS (Bankers' Automated Clearing System) is an electronic system payment method make payments directly from one bank account to another. This payment method mostly used in UK.
type: object
required:
- accountNumber
- bankSortCode
properties:
paymentMethodId:
$ref: '#/components/schemas/paymentMethodId'
last4AccountNumber:
$ref: '#/components/schemas/last4AccountNumber'
accountNumber:
$ref: '#/components/schemas/accountNumber'
bankSortCode:
description: Identifies the routing and transit number assigned by an administrative body to formally identify a chartered financial institution (bank) within a given country or common financial market for performing domestic transfers of funds to or from that institution's client accounts. Within the United States, this is known as the American Bankers Association Routing Number, and within Australia, this is known as a Bank State Branch Number. This common data element will house those two examples, along with the equivalent for any other country or financial market.
type: string
mandateList:
type: array
minItems: 0
description: List of mandate information
items:
$ref: '#/components/schemas/mandate'
accountStatus:
$ref: '#/components/schemas/accountStatus'
firstName:
$ref: '#/components/schemas/firstName'
middleName:
$ref: '#/components/schemas/middleName'
lastName:
$ref: '#/components/schemas/lastName'
consumerProfileAddress:
$ref: '#/components/schemas/consumerProfileAddress'
addressIdentifier:
$ref: '#/components/schemas/addressIdentifier'
requestId:
description: Unique request identifier to track the request through application programming interface(API) .
type: string
profileStatus:
description: Codifies the current standing of a Party's profile.
type: string
enum:
- ACTIVE
- INACTIVE
- PENDING
- ERRORED
postalCode:
description: The portion of a party’s address that is the encoded representation of a geographic area to facilitate mail delivery services.
type: string
pattern: ^[a-zA-Z0-9]+([-\s]*)[a-zA-Z0-9]+$
minLength: 3
maxLength: 12
example: '19342'
messages:
description: A list of errors and warnings.
type: object
required:
- responseStatus
- responseCode
properties:
responseStatus:
$ref: '#/components/schemas/responseStatus'
responseCode:
$ref: '#/components/schemas/responseCode'
responseMessage:
$ref: '#/components/schemas/responseMessage'
validationErrors:
type: array
minItems: 0
description: validationErrors
items:
$ref: '#/components/schemas/validationMessage'
consumerProfileResponse:
description: Consumer Profile Response Object
type: object
properties:
requestId:
$ref: '#/components/schemas/requestId'
consumerProfileId:
description: Identifies a unique occurrence of a consumer maintained in the firm as requested by merchant. Consumer profile contains information relevant to processing transactions such as name, address, account and payment methods information.
type: string
readOnly: true
consumerProfileUniqueId:
$ref: '#/components/schemas/consumerProfileUniqueId'
cardOnFileReferenceNumber:
description: Identifies a cardholder account profile which allows cardholder data (including, but not limited to, an account number or payment token) to be stored and subsequently used for transaction processing.
type: string
merchant:
$ref: '#/components/schemas/merchant'
firstName:
$ref: '#/components/schemas/firstName'
lastName:
$ref: '#/components/schemas/lastName'
fullName:
$ref: '#/components/schemas/fullName'
communication:
$ref: '#/components/schemas/communication'
paymentMethodType:
$ref: '#/components/schemas/paymentMethodType'
addresses:
type: array
minItems: 0
description: This is used for specifying an attribute used on a model for collection object that will contain one or more attributes
items:
$ref: '#/components/schemas/address'
correlationIdentifier:
description: A unique key produced by the initial entry of a customer by the originating source system, that will provide a linkage between independent events. This will allow events from multiple applications to be linked together to represent a single string of events or a customer contact experience. This field should be considered generic (aka ability to use for document event tracking) to allow correlation of events not specific to customer contacts. This is unique per customer experience and should be passed between applications.
type: string
createTimestamp:
$ref: '#/components/schemas/createTimestamp'
createUserIdentifier:
$ref: '#/components/schemas/createUserIdentifier'
updateTimestamp:
$ref: '#/components/schemas/updateTimestamp'
updateUserIdentifier:
$ref: '#/components/schemas/updateUserIdentifier'
profileStatus:
$ref: '#/components/schemas/profileStatus'
orderOverrideCode:
$ref: '#/components/schemas/orderOverrideCode'
addressType:
description: 'Codifies the classification given to the various addresses captured for a party, such as Doing Business As Address, Legal Entity Address, and Tax Address. Valid values: ''SHIPPING'' or ''BILLING'''
type: string
enum:
- SHIPPING
- BILLING
sepa:
description: Sepa Payment Information
type: object
properties:
paymentMethodId:
$ref: '#/components/schemas/paymentMethodId'
last4AccountNumber:
$ref: '#/components/schemas/last4AccountNumber'
internationalBankAccountNumber:
description: Identifies the International Bank Account Number (IBAN) for the account. IBAN is an internationally agreed system of identifying bank accounts across national borders to facilitate the communication and processing of cross border transactions with a reduced risk of transcription errors. Based on ISO 13616 standards, the IBAN consists of up to 34 alphanumeric characters, comprising a country code, two check digits and a long and detailed bank account-number. The check digits enable a sanity check of the bank account number to confirm its integrity before submitting a transaction.
type: string
writeOnly: true
internationalBusinessIdentifierCode:
description: Codifies the unique value that identifies a particular bank in the worldwide economy. The 8 to 11 digit code is based on ISO 9362 standards. This code has several aliases including SWIFT Code, SWIFT Bank Code and Bank Identification Code (BIC). ISO 9362:2014 specifies the elements and structure of a universal identifier code for financial and non-financial institutions where an international identifier is required to facilitate automated processing of information for financial services. The BIC is used for addressing messages, routing business transactions and identifying business parties. This Standard applies to organizations and excludes individual persons.
type: string
accountStatus:
$ref: '#/components/schemas/accountStatus'
mandateList:
type: array
minItems: 0
d
# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/jp-morgan-chase/refs/heads/main/openapi/jp-morgan-chase-communication-api-openapi.yml