Citizens Financial Group · OpenAPI Overlay 1.0.0

Citizens Accounts (FDX v1.0) API enrichment overlay

9 actions 9 updates documentation extends citizens-financial-group-accounts-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Citizens Financial Group's API. It is a proposal applied on top of the contract, not a document Citizens Financial Group publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

tagsx-apis-io-operation-idx-apis-io-operation-id-sourcex-apis-io-harvestedx-apis-io-sourcex-apis-io-environmentx-domain-standardx-additional-required-credentials

Targets 8

$.info
$.paths['/accounts'].get
$.paths['/accounts/{accountId}'].get
$.paths['/accounts/{accountId}/transactions'].get
$.paths['/accounts/{accountId}/contact'].get
$.paths['/accounts/{accountId}/payment-networks'].get
$.securityDefinitions['x-fapi-financial-id']
$

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: Citizens Accounts (FDX v1.0) API enrichment overlay
  version: 1.0.0
  x-generated: '2026-09-05'
  x-method: generated
  x-source: API Evangelist enrichment pass 2026-09-05; every value is read from the harvested contract
    itself or from a Citizens-published page named in the action description.
extends: citizens-financial-group-accounts-openapi.yml
actions:
- target: $.info
  description: Record the harvest provenance and the portal page the contract was read from.
  update:
    x-apis-io-harvested: '2026-09-05'
    x-apis-io-source: https://developer.citizensbank.com/product/accounts/api/70
    x-apis-io-environment: production
- target: $.info
  description: Name the domain standard the contract declares in its own base path. /fdx/v1.0 plus the
    FDX-shaped resource tree is the definitive signal, not a marketing claim.
  update:
    x-domain-standard:
      id: fdx
      name: Financial Data Exchange (FDX) API
      version: '1.0'
      declared-at: $.basePath
      see: conformance/citizens-financial-group-conformance.yml
- target: $.paths['/accounts'].get
  description: The published contract declares no operationId on any path. Supply a stable identifier so
    the operation can be referenced by agents and crosswalks; the name is ours, not Citizens'.
  update:
    tags:
    - Accounts
    x-apis-io-operation-id: listAccounts
    x-apis-io-operation-id-source: assigned by API Evangelist; the published contract declares none
- target: $.paths['/accounts/{accountId}'].get
  description: Supply a stable identifier for the account-detail read.
  update:
    tags:
    - Accounts
    x-apis-io-operation-id: getAccount
    x-apis-io-operation-id-source: assigned by API Evangelist; the published contract declares none
- target: $.paths['/accounts/{accountId}/transactions'].get
  description: Supply a stable identifier for the transaction read.
  update:
    tags:
    - Transactions
    x-apis-io-operation-id: listAccountTransactions
    x-apis-io-operation-id-source: assigned by API Evangelist; the published contract declares none
- target: $.paths['/accounts/{accountId}/contact'].get
  description: Supply a stable identifier for the account contact read.
  update:
    tags:
    - Accounts
    x-apis-io-operation-id: getAccountContact
    x-apis-io-operation-id-source: assigned by API Evangelist; the published contract declares none
- target: $.paths['/accounts/{accountId}/payment-networks'].get
  description: Supply a stable identifier for the payment-networks read.
  update:
    tags:
    - Accounts
    x-apis-io-operation-id: getAccountPaymentNetworks
    x-apis-io-operation-id-source: assigned by API Evangelist; the published contract declares none
- target: $.securityDefinitions['x-fapi-financial-id']
  description: Record how the surface is actually reached. The contract advertises only the FAPI financial-id
    header; the user guides state the call additionally requires a bearer token from the client-credentials
    flow and an X-IBM-Client-Id issued by the developer portal.
  update:
    x-additional-required-credentials:
    - Authorization Bearer token from https://apis.citizensbank.com/as/token.oauth2 (private_key_jwt over mTLS)
    - X-IBM-Client-Id issued at developer-portal onboarding
    - source-IP allowlisting provisioned by the Citizens Implementation Manager
    x-source: authentication/citizens-financial-group-authentication.yml
- target: $
  description: Record the error-contract gap. Every path in this contract declares a 200 and nothing else,
    so no failure mode is machine-readable; the real code registry is published only in the PDF user guides.
  update:
    x-error-contract-gap:
      declared-status-codes:
      - '200'
      note: No 4xx or 5xx response is declared on any operation in this contract.
      see: errors/citizens-financial-group-error-codes.yml