Reporting API

Data Reports API enables easy access to build consumable data sets. It is designed for merchants or system integrators looking for transaction-level payment data.

OpenAPI Specification

jp-morgan-chase-reporting-api-openapi.yml Raw ↑
# Harvested verbatim from the J.P. Morgan Payments Developer Portal.
# method: searched
# source: https://developer.payments.jpmorgan.com/api/llm-content?path=en%2Fapi%2Fcommerce%2Foptimization-protection%2Freporting%2Freporting-oas.md
# generated: '2026-07-28'
openapi: 3.0.1
info:
  title: Reporting API
  description: Data Reports API enables easy access to build consumable data sets. It is designed for
    merchants or system integrators looking for transaction-level payment data.
  version: 1.4.0
  contact:
    name: Reporting API Support
    url: https://developer.payments.jpmorgan.com/contact-support
    email: ms.pit.team@jpmorgan.com
servers:
- url: https://api.reports.jpmorgan.com/api/v1
  description: PRODUCTION - OAUTH
- url: https://api.reports-files.jpmorgan.com/api/v1
  description: PRODUCTION - OAUTH REPORTS FILES
- url: https://api.reports.test.jpmorgan.com/api/v1
  description: CLIENT TESTING - OAUTH
- url: https://api-mock.payments.jpmorgan.com/api/v1
  description: MOCK
security:
- BearerAuth: []
tags:
- name: Report Types
  description: Endpoints for report types.
- name: Report Configurations
  description: Endpoints for report configurations.
- name: Reports
  description: Endpoints for reports.
- name: Report Files
  description: Endpoints for report files.
- name: Reporting Groups
  description: Reporting Group Information
- name: Health Check
  description: Validate the health of the service.
paths:
  /healthcheck:
    get:
      summary: Health check for the Data Reports service.
      security: []
      operationId: v1GetHealth
      tags:
      - Health Check
      description: Healthcheck endpoint to validate that the service is running.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/healthCheckResource'
              examples:
                Success:
                  value:
                    status: UP
        '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'
  /report-types:
    get:
      summary: Get a list of available report types.
      operationId: v1ListReportTypes
      tags:
      - Report Types
      description: Get a list of available report types.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportTypes'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/adfsError'
              examples:
                Authentication Failure:
                  value:
                    errorSource: APG-EDGE
                    errorCode: EDG00012
                    errorDescription: the signature could not be verified
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /report-types/{report-type-id}:
    get:
      summary: Get details for a specific report type.
      operationId: v1ListReportTypesByReportTypeId
      tags:
      - Report Types
      description: Get details for a specific report type.
      parameters:
      - name: report-type-id
        in: path
        required: true
        schema:
          type: string
          maxLength: 40
        description: Uniquely identifies the type of report being requested.
        examples:
          Success:
            value: '1003'
          Authentication Failure:
            value: '9003'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportTypeFields'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /reports:
    get:
      summary: Get a list of available reports.
      operationId: v1ListReports
      tags:
      - Reports
      description: Get a list of available reports.
      parameters:
      - name: next
        in: header
        schema:
          type: string
        description: This is used for specifying individual parameters under API endpoint methods.
        examples:
          Success:
            value: Q0MtMTAzMDMyLVY3NzY0ODMtODA3MTUtVUFUfDEwYjQ1YzJlNzhhMGFiNDA5ZDlkYWJhZDY3Y2FmZWIxZGUwMGYwN2ZmZmZjMTcwMA
          Authentication Failure:
            value: XYX1239999999
      - name: reportStartDate
        in: query
        schema:
          type: string
        description: Report creation start date. Format- YYYY-MM-DD.
        examples:
          Success:
            value: '2025-01-05'
      - name: reportEndDate
        in: query
        schema:
          type: string
        description: Report creation end date. Format- YYYY-MM-DD.
        examples:
          Success:
            value: '2025-01-05'
      - name: reportConfigurationId
        in: query
        schema:
          type: string
        description: The unique identifier for report configuration.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportList'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
    post:
      summary: Create a new report configuration.
      operationId: v1CreateReportConfiguration
      tags:
      - Reports
      description: Create a new report configuration for a merchant based upon a report type.
      requestBody:
        description: Create new report configuration.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/reportConfigRequest'
            examples:
              Success with Minimum Config/Adhoc Frequency:
                value:
                  entityType: PE
                  entityIds:
                  - '9876543210'
                  - '9876543211'
                  reportSections:
                  - sectionReportTypeName: Transaction Details
                  frequencyConfig:
                    scheduleFrequency: adhoc
                    reportingPeriodStartTimestamp: '2020-04-11 01:00:00'
                    reportingPeriodEndTimestamp: '2020-04-13 23:00:00'
              Success with Minimum Config/Scheduled Frequency:
                value:
                  entityType: PE
                  entityIds:
                  - '9876543210'
                  - '9876543211'
                  reportSections:
                  - sectionReportTypeName: Transaction Details
                  frequencyConfig:
                    scheduleFrequency: daily
                    reportFileScheduledTime: 09:00:00
                    reportingPeriodStartTime: '23:00:00'
              Success with Complete Config/Adhoc Frequency:
                value:
                  entityType: PE
                  entityIds:
                  - '998586046651'
                  reportSections:
                  - sectionReportTypeName: Settlement Details
                    sectionSelectedFields:
                    - alias: Record Type
                      constantValueText: RACT0010
                    - alias: Entity Type
                      constantValueText: TD
                    - reportAttributeName: Action Date
                      alias: Submission Date
                    - reportAttributeName: Payout Identifier
                    - reportAttributeName: Transaction Processing Entity Identifier
                      alias: Entity Number
                    - reportAttributeName: Transaction Currency Code
                      alias: Presentment Currency
                    - reportAttributeName: Sales Order Number
                      alias: Merchant Order Number
                    - reportAttributeName: Masked Card Number
                      alias: Account Number
                    - reportAttributeName: Card Expiration Month Year Number
                      alias: Expiration Date
                    - reportAttributeName: Transaction Amount
                      alias: Amount
                    - reportAttributeName: Payment Method Code
                      alias: MOP
                    - reportAttributeName: Client Action Code
                      alias: Action Code
                    - reportAttributeName: Authorization Timestamp
                      alias: Auth Date
                    - reportAttributeName: Firm Authorization Response Code
                      alias: Auth Code
                    - reportAttributeName: Payment Authorization Response Identifier
                      alias: Auth Response Code
                    - reportAttributeName: Merchant Category Code
                      alias: MCC
                    - reportAttributeName: Token Type Code
                    - reportAttributeName: Interchange Program Code
                      alias: Interchange Qualification Code
                    - reportAttributeName: Interchange Fee Amount
                      alias: Interchange Unit Fee
                    - reportAttributeName: Interchange Fee Rate
                      alias: Interchange Face Value % Fee
                    - reportAttributeName: Total Interchange Amount
                    - reportAttributeName: Total Payment Brand Fee Amount
                      alias: Total Assessment Amount
                    - reportAttributeName: Other Fee Amount
                      alias: Other Debit Passthrough Fees
                    - reportAttributeName: Settlement Currency Code
                      alias: Settlement Currency
                    sectionSortOrderList:
                    - reportAttributeName: Total Interchange Amount
                      sortOrderCode: asc
                    sectionFilterAttributeList:
                    - reportAttributeName: Funding Status Code
                      filterAttributeCode: ="Payment Submitted"
                    - reportAttributeName: Client Action Code
                      filterAttributeCode: IN ("DP","RF","AR","DR","RQ")
                  fileDelimiter: ','
                  reportConfigurationName: Deposit Detail Financial Report-Ad hoc
                  reportFileName: <Processing Entity ID>.<Report Type>.<frequency>.<From Date YYYY-MM-DD>.<To
                    Date YYYY-MM-DD>
                  reportHeader: HACT0010,<Processing Entity ID>,<Report Type>,<frequency>,<From Date YYYY-MM-DD>,<To
                    Date YYYY-MM-DD>,<Generation Date YYYY-MM-DD>,GenerationTime=<Generation Time HH:MM:SS>
                  fileHeader: DFRBEGIN,ProcessingEntityId=<Processing Entity ID>,Frequency=<frequency>
                  fileTrailer: DFREND,ProcessingEntityId=<Processing Entity ID>,Frequency=<frequency>
                  csvColumnNameDisplayIndicator: true
                  reportConfigStatus: Active
                  frequencyConfig:
                    scheduleFrequency: adhoc
                    reportingPeriodStartTimestamp: '2021-02-14 01:00:00'
                    reportingPeriodEndTimestamp: '2021-02-16 23:00:00'
              Success with exisiting config on demand/adhoc:
                value:
                  reportConfigurationId: 7e04226f-c683-4854-ab58-24d2eb24581c
                  frequencyConfig:
                    scheduleFrequency: adhoc
                    reportingPeriodStartTimestamp: '2020-04-11 01:00:00'
                    reportingPeriodEndTimestamp: '2020-04-13 23:00:00'
              Failure due to incorrect report type:
                value:
                  entityType: PE
                  entityIds:
                  - '9876543210'
                  - '9876543211'
                  reportSections:
                  - sectionReportTypeName: Trans Details
                  frequencyConfig:
                    scheduleFrequency: daily
                    reportFileScheduledTime: 09:00:00
                    reportingPeriodStartTime: '23:00:00'
              Authentication Failure:
                value:
                  reportConfigurationId: 5555-6666-7777-2222
                  frequencyConfig:
                    scheduleFrequency: adhoc
                    reportingPeriodStartTimestamp: '2020-04-11 01:00:00'
                    reportingPeriodEndTimestamp: '2020-04-13 23:00:00'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportPostResponse'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /reports/{report-id}:
    get:
      summary: Get details for a specific report.
      operationId: v1GetReportByReportId
      tags:
      - Reports
      description: Get details for a specific report.
      parameters:
      - name: report-id
        in: path
        required: true
        schema:
          type: string
          maxLength: 40
        description: Unique id  for the report.
        examples:
          Success:
            value: c6a6f075-64d5-476f-b463-bc1c5de1abd7
          Authentication Failure:
            value: 5555-66666-7777
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/report'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /report-configs:
    get:
      summary: Get a list of available report configurations.
      operationId: v1ListReportConfigurations
      tags:
      - Report Configurations
      description: Get a list of available report configurations.
      parameters:
      - name: next
        in: header
        schema:
          type: string
        description: This is used for specifying individual parameters under API endpoint methods.
        examples:
          Success:
            value: Q0MtMTAzMDMyLVY3NzY0ODMtODA3MTUtVUFUfDEwYjQ1YzJlNzhhMGFiNDA5ZDlkYWJhZDY3Y2FmZWIxZGUwMGYwN2ZmZmZjMTcwMA
          Authentication Failure:
            value: 5555-6666-7777
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportConfigurationList'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /report-configs/{report-configuration-id}:
    get:
      summary: Get details for a specific report configuration.
      operationId: v1GetReportConfigurationByReportConfigurationId
      tags:
      - Report Configurations
      description: Get details for a specific report configuration.
      parameters:
      - name: report-configuration-id
        in: path
        required: true
        schema:
          type: string
          maxLength: 40
        description: Identifies a unique occurrence of reporting setup as requested by customer.
        examples:
          Success:
            value: 7611d1bf-325c-4795-a828-ac21f9bea5dc
          Authentication Failure:
            value: 1234-5678-9101
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportConfigResponse'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
    put:
      summary: Update an existing report configuration.
      operationId: v1UpdateReportConfigurationByReportConfigurationId
      tags:
      - Report Configurations
      description: Update an existing report configuration.
      parameters:
      - name: report-configuration-id
        in: path
        required: true
        schema:
          type: string
          maxLength: 40
        description: Identifies a unique occurrence of reporting setup as requested by customer.
        examples:
          Success:
            value: 7611d1bf-325c-4795-a828-ac21f9bea5dc
          Authentication Failure:
            value: 5555-6666-7777
          Failure due to incorrect frequency:
            value: 12324-5678-9012
      requestBody:
        description: Update an existing report configuration.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/reportConfigPutRequest'
            examples:
              Success:
                value:
                  reportConfigStatus: Active
              Failure due to incorrect frequency:
                value:
                  entityType: PE
                  entityIds:
                  - '9876543210'
                  - '9876543211'
                  reportSections:
                  - sectionReportTypeName: Transaction Details
                  frequencyConfig:
                    scheduleFrequency: adhoc
                    reportingPeriodStartTimestamp: '2021-08-23 01:00:00'
                    reportingPeriodEndTimestamp: '2021-08-23 23:00:00'
              Authentication Failure:
                value:
                  entityType: PE
                  entityIds:
                  - '9876543210'
                  - '9876543211'
                  reportSections:
                  - sectionReportTypeName: Transaction Details
                  fileDelimiter: '|'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportConfigResponse'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /report-files/{report-id}:
    get:
      summary: Get a specific report file.
      operationId: v1GetReportFileByReportId
      tags:
      - Report Files
      description: Retrieves a specific report file by its ID. Note In production, override the base URL
        with https://api.reports-files.jpmorgan.com/api/v1
      parameters:
      - name: report-id
        in: path
        required: true
        schema:
          type: string
          maxLength: 40
        description: Unique id  for the report.
        examples:
          Success:
            value: fca8115f-1912-4743-9d27-c61de99b604a
          Authentication Failure:
            value: 5555-6666-7777
      - name: report-format
        in: query
        deprecated: true
        schema:
          type: string
          enum:
          - CSV
          - PDF
          - GZ
        description: Indicates the report file format as text or binary file. Default value is CSV.
        examples:
          Success:
            value: CSV
      - name: reportFormat
        in: query
        schema:
          type: string
          enum:
          - CSV
          - PDF
          - GZ
          - XLSX
        description: Indicates the report file format as text or binary file. Default value is CSV.
        examples:
          Success:
            value: CSV
      responses:
        '200':
          description: OK
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/fileContent'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
  /reporting-groups:
    post:
      summary: Create new reporting group
      operationId: v1ReportingGroupPost
      tags:
      - Reporting Groups
      description: Create a new reporting group.
      requestBody:
        description: Reporting group information
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/reportingGroup'
            examples:
              Create a reporting group of entities:
                value:
                  reportingGroupName: Example RG 1
                  reportingGroupDescription: Description for Example RG 1
                  childEntityInfo:
                  - entityType: BU
                    entityIds:
                    - '1285401'
                    - '123456'
              Create a reporting group of reporting groups:
                value:
                  reportingGroupName: Example RG 2
                  reportingGroupDescription: Description for Example RG 2
                  childEntityInfo:
                  - entityType: RGBU
                    entityIds:
                    - '2405141152387311'
                    - '2405141153250961'
              Create a reporting group of entities and reporting groups:
                value:
                  reportingGroupName: Example RG 3
                  reportingGroupDescription: Description for Example RG 3
                  childEntityInfo:
                  - entityType: RGBU
                    entityIds:
                    - '2407092248548502'
                  - entityType: BU
                    entityIds:
                    - '1285401'
              Create a Heterogeneous reporting group multi level:
                value:
                  reportingGroupName: Example RGH 4
                  reportingGroupDescription: Description for Example RGH 4
                  childEntityInfo:
                  - entityType: RGCO
                    entityIds:
                    - '2507252256449185'
                  - entityType: RGH
                    entityIds:
                    - '2509151900464748'
                  - entityType: TD
                    entityIds:
                    - '188935'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportingGroupResponse'
        '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'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
    get:
      summary: Get a list of available report reporting groups.
      operationId: v1ReportingGroupGet
      tags:
      - Reporting Groups
      description: Get a list of available reporting groups.
      parameters:
      - name: groupType
        in: query
        schema:
          type: string
        description: The category of the reporting group. Allowed values are RGPE, RGTD, RGFTI, RGBU,
          RGCO, RGH
        examples:
          Get reporting groups by groupType:
            value: RGCO
          Get reporting groups by groupType & groupId:
            value: RGCO
      - name: groupId
        in: query
        schema:
          type: string
        description: Unique identifier of a reporting group.
        examples:
          Get reporting group by groupId:
            value: '2405281843563422'
          Get reporting groups by groupType & groupId:
            value: '2405232310294687'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reportingGroupResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/adfsError'
              examples:
                Authentication Failure:
                  value:
                    errorSource: APG-EDGE
                    errorCode: EDG00012
                    errorDescription: the signature could not be verified
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messages'
        '504':
          description: Gateway Timeout
          content:
            application/json:
            

# --- truncated at 32 KB (68 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/jp-morgan-chase/refs/heads/main/openapi/jp-morgan-chase-reporting-api-openapi.yml