Finicity Consumers API

Create and manage consumers associated with customers in order to use report services

Operations 4

POST /decisioning/v1/customers/{customerId}/consumer Create Consumer for the Customer #
GET /decisioning/v1/customers/{customerId}/consumer Get the Consumer Record for the Given Customer #
GET /decisioning/v1/consumers/{consumerId} Get Consumer by ID #
PUT /decisioning/v1/consumers/{consumerId} Modify Consumer by ID #

Work with this as data

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/finicity-consumers-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 Specification

finicity-consumers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Open Finance Consumers API
  description: 'OpenAPI specification for Finicity APIs.


    Open Finance (formerly Open Banking) solutions in the US are provided by

    Finicity, a Mastercard company.'
  contact:
    name: API Support
    email: apisupport@mastercard.com
    url: https://developer.mastercard.com/open-finance-us/documentation/support/
  version: 1.43.0
servers:
- url: https://api.finicity.com
  description: Production
security:
- FinicityAppKey: []
  FinicityAppToken: []
tags:
- name: Consumers
  description: Create and manage consumers associated with customers in order to use report services
paths:
  /decisioning/v1/customers/{customerId}/consumer:
    post:
      tags:
      - Consumers
      summary: Create Consumer for the Customer
      description: "Create a consumer record associated with the given customer. A consumer persists as the owner of any reports that are generated, even after the original customer is deleted from the system.\n\nAlong with the required fields, the following fields are conditionally required:\n1. **SSN & Birthday(DOB):** \n    - Either `ssn` or `birthday` must be provided. Both can also be\nprovided together.\n2. **Phone & Email:** \n    - Either `phone` or `email` must be provided. Both can also be\nprovided together.\n\nA consumer must be created for the given customer before creating a CRA report through our Generate Report services.\n\n_Supported regions_: ![\U0001F1FA\U0001F1F8](https://flagcdn.com/20x15/us.png)"
      operationId: CreateConsumer
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      requestBody:
        $ref: '#/components/requestBodies/CreateConsumerRequest'
      responses:
        '201':
          $ref: '#/components/responses/CreateConsumerResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
        '409':
          $ref: '#/components/responses/ConflictErrorResponse'
    get:
      tags:
      - Consumers
      summary: Get the Consumer Record for the Given Customer
      description: 'Get the details of a consumer record by customer ID.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GetConsumerForCustomer
      parameters:
      - $ref: '#/components/parameters/CustomerIdParameter'
      responses:
        '200':
          $ref: '#/components/responses/GetConsumerForCustomerResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
  /decisioning/v1/consumers/{consumerId}:
    get:
      tags:
      - Consumers
      summary: Get Consumer by ID
      description: 'Get the details of a consumer record by consumer ID.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: GetConsumer
      parameters:
      - $ref: '#/components/parameters/ConsumerIdParameter'
      responses:
        '200':
          $ref: '#/components/responses/GetConsumerResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
    put:
      tags:
      - Consumers
      summary: Modify Consumer by ID
      description: 'Modify an existing consumer. Fields that are not specified will be left unchanged.


        _Supported regions_: ![🇺🇸](https://flagcdn.com/20x15/us.png)'
      operationId: ModifyConsumer
      parameters:
      - $ref: '#/components/parameters/ConsumerIdParameter'
      requestBody:
        $ref: '#/components/requestBodies/ModifyConsumerRequest'
      responses:
        '204':
          $ref: '#/components/responses/ModifyConsumerResponse'
        '400':
          $ref: '#/components/responses/BadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedErrorResponse'
        '404':
          $ref: '#/components/responses/ResourceNotFoundErrorResponse'
components:
  examples:
    MissingFinicityAppKeyExample:
      value:
        code: '10026'
        message: Missing parameter (Finicity-App-Key)
    ResellerInvalidDateRangeGreaterThan31DaysExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - It is more than 31 days'
    ResellerNoReportForPartnerExample:
      value:
        code: '10100'
        message: Cannot find resellerBilling reports with id 2445581559892.
    ResellerInvalidDateRangeGreaterThanEndDateExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - startDate is greaterThan endDate'
    BothCraAndFtcPurposeTrueExample:
      value:
        code: '10100'
        status: '400'
        message: forCRAPurpose and forFTCPurpose may not both be TRUE.
    ConsumerExistsConflictExample:
      value:
        code: '11000'
        message: A consumer already exists for customer 4025024821
    MissingFieldExample:
      value:
        code: '10005'
        message: Missing parameter (partnerId)
    ResellerInvalidDateRangeLessThanZeroExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - start or end date less than or equal to zero'
    InvalidConsumerEmailExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.email.
    BadCredentialsExample:
      value:
        code: '24302'
        message: Bad credentials
    InvalidForesightReportRequestExample:
      value:
        code: '10100'
        message: At least one of customerId or externalCustomerId must be provided; both are also allowed.
    ConsumerWithSsnEmailExample:
      value:
        firstName: Jane
        lastName: Smith
        address: 456 Oak Ave
        city: Salt Lake City
        state: UT
        zip: '84111'
        ssn: '987654321'
        email: jane.smith@example.com
    ConsumerWithBirthdayPhoneEmailExample:
      value:
        firstName: Eve
        lastName: Blue
        address: 159 Elm St
        city: St. George
        state: UT
        zip: '84770'
        birthday:
          year: 1995
          month: 9
          dayOfMonth: 30
        phone: 1-212-555-1234
        email: eve.blue@example.com
    NoRegisteredApplicationExample:
      value:
        code: '50051'
        message: No registered partner applications found.
    ExpiredFinicityAppTokenExample:
      value:
        code: '10023'
        message: Expired (Finicity-App-Token)
    InvalidFieldExample:
      value:
        code: '10010'
        status: '400'
        message: Customer ID does not exist or does not belong to this partner
        user_message: One or more of the fields could not be validated. Please ensure you have entered the correct data.
        tags: ''
    InvalidValueExample:
      value:
        code: '1618'
        message: Negative or invalid value entered. Please use positive numbers only.
    InvalidConsumerSSNExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.ssn.  Required format is 9 digits.
    InvalidFinicityAppTokenExample:
      value:
        code: '10022'
        message: Invalid (Finicity-App-Token)
    NoAccountForInstitutionLoginIdExample:
      value:
        code: '38007'
        message: Customer does not have any accounts associated with institutionLoginId.
    CustomerNotFoundExample:
      value:
        code: '14001'
        message: Customer not found.
    ResellerNoDataForPartnerExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Reports not found 2445583947903 resellerBilling reports'
    ResellerInvalidDateRangeExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Invalid date range - start or end date is empty or null'
    ExpiredTokenExample:
      value:
        code: '10023'
        message: Expired (Finicity-App-Token)
    ResourceNotFoundExample:
      value:
        code: '14001'
        message: Resource not found.
    ConsumerNotFoundExample:
      value:
        code: '10100'
        message: Cannot find consumer with id 1234.
    GenericBadRequestExample:
      value:
        code: '14020'
        message: Bad request.
    ConsumerWithBirthdayPhoneExample:
      value:
        firstName: Alice
        lastName: Brown
        address: 789 Pine Rd
        city: Provo
        state: UT
        zip: '84601'
        birthday:
          year: 1985
          month: 5
          dayOfMonth: 15
        phone: 1-212-555-1234
    InvalidConsumerPhoneExample:
      value:
        code: '10100'
        message: Invalid format for field consumer.phone.
    ConsumerWithAllValuesExample:
      value:
        firstName: John
        lastName: Doe
        address: 434 W Ascension Way
        city: Murray
        state: UT
        zip: '84123'
        phone: 1-3-1234-1234
        ssn: '989898989'
        birthday:
          year: '1989'
          month: '12'
          dayOfMonth: '13'
        email: someone@test.com
        suffix: Mr
        middleName: Doe
        endUser:
          name: Jane
          address: 434 W Ascension Way
          city: Murray
          state: UT
          zip: '84123'
          phone: 1-3-1234-123
          email: someone@test.com
          url: testurl.com
    ConsumerWithSsnPhoneEmailExample:
      value:
        firstName: Frank
        lastName: Yellow
        address: 753 Willow Ln
        city: Orem
        state: UT
        zip: '84057'
        ssn: '111223333'
        phone: 1-212-555-1234
        email: frank.yellow@example.com
    AccountTypeNotSupportedExample:
      value:
        code: '14020'
        message: Bad request. (Account type not supported).
    PermissiblePurposeCodeExample:
      value:
        code: '10100'
        status: '400'
        message: Permissible Purpose Code is required
    ConsumerWithBirthdayEmailExample:
      value:
        firstName: Bob
        lastName: White
        address: 321 Maple St
        city: Ogden
        state: UT
        zip: '84401'
        birthday:
          year: 1975
          month: 12
          dayOfMonth: 25
        email: bob.white@example.com
    ConsumerWithSsnBirthdayPhoneExample:
      value:
        firstName: Carol
        lastName: Green
        address: 654 Cedar Ave
        city: Layton
        state: UT
        zip: '84041'
        ssn: '555443333'
        birthday:
          year: 1992
          month: 7
          dayOfMonth: 4
        phone: 1-212-555-1234
    ConsumerWithSsnBirthdayEmailExample:
      value:
        firstName: Dave
        lastName: Black
        address: 987 Spruce Dr
        city: Logan
        state: UT
        zip: '84321'
        ssn: '222334444'
        birthday:
          year: 1980
          month: 3
          dayOfMonth: 10
        email: dave.black@example.com
    ResellerPartnerNotAuthorizedExample:
      value:
        code: '10100'
        message: 'RESELLER_BILLING_REPORT: Partner is not authorized to access resellerBilling reports for partnerId 2445583947903'
    CustomerReportLimitExceedExample:
      value:
        code: '20400'
        message: The max report generation limit was exceeded for this customer.
    InvalidExperienceFieldExample:
      value:
        code: '10010'
        status: '400'
        message: '"experience" must be a valid GUID'
        user_message: One or more of the fields could not be validated. Please ensure you have entered the correct data.
        tags: ''
    ConsumerWithSsnPhoneExample:
      value:
        firstName: John
        lastName: Doe
        address: 434 W Ascension Way
        city: Murray
        phone: 1-212-555-1234
        ssn: '989898989'
        suffix: Mr
        endUser:
          name: John
          address: 434 W Ascension Way
          city: Murray
          state: UT
          zip: '84123'
          phone: 1-212-555-1234
          email: someone@test.com
          url: testurl.com
    NoConsumerForCustomerExample:
      value:
        code: '10100'
        message: Cannot find consumer for customer with id 5011115315."
    MissingFinicityAppTokenExample:
      value:
        code: '10024'
        message: Missing parameter (Finicity-App-Token)
  schemas:
    EndUserUrl:
      type: string
      description: Reseller end user URL
      minLength: 2
      maximum: 999
      example: testurl.com
    ZipCode:
      type: string
      description: A ZIP code
      example: '84123'
    NumericCustomerId:
      type: integer
      format: int64
      description: A customer ID represented as a number. See Add Customer API for how to create a customer ID.
      example: 1005061234
    ConsumerId:
      type: string
      description: A consumer ID. See Create Consumer API for how to create a consumer ID.
      example: 0bf46322c167b562e6cbed9d40e19a4c
    EmailAddress:
      type: string
      description: An email address
      example: myname@mycompany.com
    Consumer:
      description: A Mastercard Open Finance consumer record
      required:
      - id
      - firstName
      - lastName
      - customerId
      - address
      - city
      - state
      - zip
      - phone
      - ssn
      - birthday
      - email
      - createdDate
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ConsumerId'
        firstName:
          $ref: '#/components/schemas/FirstName'
        lastName:
          $ref: '#/components/schemas/LastName'
        customerId:
          $ref: '#/components/schemas/NumericCustomerId'
        address:
          $ref: '#/components/schemas/Address'
        city:
          $ref: '#/components/schemas/City'
        state:
          $ref: '#/components/schemas/State'
        zip:
          $ref: '#/components/schemas/ZipCode'
        phone:
          $ref: '#/components/schemas/PhoneNumber'
        ssn:
          $ref: '#/components/schemas/SocialSecurityNumberLastDigits'
        birthday:
          $ref: '#/components/schemas/Birthday'
        email:
          $ref: '#/components/schemas/EmailAddress'
        createdDate:
          $ref: '#/components/schemas/UnixDate'
        suffix:
          $ref: '#/components/schemas/Suffix'
        endUser:
          $ref: '#/components/schemas/ConsumerEndUser'
    AddressLine1:
      type: string
      description: Address line 1
      example: 434 W Ascension Way
    ConsumerUpdate:
      type: object
      properties:
        firstName:
          $ref: '#/components/schemas/FirstName'
        lastName:
          $ref: '#/components/schemas/LastName'
        address:
          $ref: '#/components/schemas/Address'
        city:
          $ref: '#/components/schemas/City'
        state:
          $ref: '#/components/schemas/State'
        zip:
          $ref: '#/components/schemas/ZipCode'
        phone:
          $ref: '#/components/schemas/PhoneNumber'
        ssn:
          $ref: '#/components/schemas/SocialSecurityNumber'
        birthday:
          $ref: '#/components/schemas/Birthday'
        email:
          $ref: '#/components/schemas/EmailAddress'
        suffix:
          $ref: '#/components/schemas/Suffix'
        endUser:
          $ref: '#/components/schemas/ConsumerEndUser'
    PhoneNumber:
      type: string
      description: A phone number (max length 15).
      example: 1-801-984-4200
    ErrorMessage:
      required:
      - code
      type: object
      properties:
        code:
          type: object
          description: 'An error code (can be returned as a number or a string). Useful links: [Common API Status Codes](https://developer.mastercard.com/open-finance-us/documentation/errors/best-practices/#common-api-status-codes), [Aggregation Status Codes](https://developer.mastercard.com/open-finance-us/documentation/products/manage/account-aggregation/#aggregation-status-codes).'
          example: '10001'
        status:
          type: string
          description: A status code
          example: '401'
        title:
          type: string
          description: A title for the error
          example: Connecting accounts error
        level:
          type: string
          description: An error level
          example: error
        message:
          type: string
          description: An error message
          example: Invalid authorization credentials
        user_message:
          type: string
          description: Some more details about the error
          example: The session has expired or is invalid
        assetId:
          $ref: '#/components/schemas/AssetId'
        accountId:
          $ref: '#/components/schemas/AccountId'
        externalTransactionId:
          type: string
          description: A unique identifier for the transaction that assists in linking data back to your systems.
          example: MAC1005061234
          minLength: 1
          maxLength: 100
        tags:
          type: string
          description: Categories that the error belongs to
          example: AGG
    SocialSecurityNumberLastDigits:
      type: string
      description: Last 4 digits of a SSN
      example: '9999'
    NewConsumer:
      description: "A new consumer to be created. Along with the required fields, the following fields are conditionally required: \n1. **SSN & Birthday(DOB):** \n    - Either `ssn` or `birthday` must be provided. Both can also be provided together.\n\n2. **Phone & Email:** \n    - Either `phone` or `email` must be provided. Both can also be provided together."
      required:
      - firstName
      - lastName
      - state
      type: object
      properties:
        firstName:
          $ref: '#/components/schemas/FirstName'
        lastName:
          $ref: '#/components/schemas/LastName'
        address:
          $ref: '#/components/schemas/Address'
        city:
          $ref: '#/components/schemas/City'
        state:
          $ref: '#/components/schemas/State'
        zip:
          $ref: '#/components/schemas/ZipCode'
        phone:
          $ref: '#/components/schemas/PhoneNumber'
        ssn:
          $ref: '#/components/schemas/SocialSecurityNumber'
        birthday:
          $ref: '#/components/schemas/Birthday'
        email:
          $ref: '#/components/schemas/EmailAddress'
        suffix:
          $ref: '#/components/schemas/Suffix'
        endUser:
          $ref: '#/components/schemas/ConsumerEndUser'
    AccountId:
      type: string
      description: An account ID
      example: '5011648377'
    SocialSecurityNumber:
      type: string
      description: A full SSN with or without hyphens
      example: 999-99-9999
    CreatedConsumer:
      description: A consumer that was just created
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ConsumerId'
        createdDate:
          $ref: '#/components/schemas/UnixDate'
        customerId:
          $ref: '#/components/schemas/NumericCustomerId'
    LastName:
      type: string
      description: The last name of the account holder
      example: Smith
    ConsumerEndUser:
      description: Reseller end user information. This is populated only when the report requires a consumer record to be generated and the consumer object includes end user details. The partner is expected to include endUser details when creating a consumer if the end user of the consumer reports is another entity than the partner generating the report.
      required:
      - name
      - address
      - city
      - state
      - zip
      - phone
      type: object
      properties:
        name:
          $ref: '#/components/schemas/FirstName'
        address:
          $ref: '#/components/schemas/AddressLine1'
        city:
          $ref: '#/components/schemas/City'
        state:
          $ref: '#/components/schemas/State'
        zip:
          $ref: '#/components/schemas/ZipCode'
        phone:
          $ref: '#/components/schemas/PhoneNumber'
        email:
          $ref: '#/components/schemas/EmailAddress'
        url:
          $ref: '#/components/schemas/EndUserUrl'
    Address:
      type: string
      description: A street address
      example: '434 W Ascension Way Suite #200 Murray UT 84123'
    AssetId:
      type: string
      description: An asset ID. Generated by Data Connect or by using the Store Customer Pay Statement API.
      example: 097545c5-1c2a-4f20-a5ef-77f0820344c9-2018601178
    Suffix:
      type: string
      description: A generational or academic suffix
      example: PhD
    State:
      type: string
      description: State
      example: UT
    FirstName:
      type: string
      description: The first name of the account holder
      example: John
    Birthday:
      type: object
      properties:
        year:
          type: integer
          description: The birthday 4-digit year
          format: int32
          example: 1989
        month:
          type: integer
          description: The birthday 2-digit month (1 is January)
          format: int32
          example: 8
        dayOfMonth:
          type: integer
          description: The birthday 2-digit day-of-month
          format: int32
          example: 13
      description: A birth date
    UnixDate:
      type: integer
      description: 'A date in Unix epoch time (in seconds). See: [Handling Epoch Dates and Times](https://developer.mastercard.com/open-finance-us/documentation/errors/best-practices/).'
      format: int64
      example: 1607450357
    CustomerId:
      type: string
      description: A customer ID. See Add Customer API for how to create a customer ID.
      example: '1005061234'
    City:
      type: string
      description: City
      example: Murray
  responses:
    BadRequestErrorResponse:
      description: The request was rejected
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            PermissiblePurposeCodeExample:
              $ref: '#/components/examples/PermissiblePurposeCodeExample'
            InvalidForesightReportRequestExample:
              $ref: '#/components/examples/InvalidForesightReportRequestExample'
            BothCraAndFtcPurposeTrueExample:
              $ref: '#/components/examples/BothCraAndFtcPurposeTrueExample'
            MissingFieldExample:
              $ref: '#/components/examples/MissingFieldExample'
            InvalidFieldExample:
              $ref: '#/components/examples/InvalidFieldExample'
            InvalidExperienceFieldExample:
              $ref: '#/components/examples/InvalidExperienceFieldExample'
            GenericBadRequestExample:
              $ref: '#/components/examples/GenericBadRequestExample'
            AccountTypeNotSupportedExample:
              $ref: '#/components/examples/AccountTypeNotSupportedExample'
            ResellerPartnerNotAuthorizedExample:
              $ref: '#/components/examples/ResellerPartnerNotAuthorizedExample'
            ResellerInvalidDateRangeExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeExample'
            ResellerInvalidDateRangeLessThanZeroExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeLessThanZeroExample'
            ResellerInvalidDateRangeGreaterThanEndDateExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeGreaterThanEndDateExample'
            ResellerInvalidDateRangeGreaterThan31DaysExample:
              $ref: '#/components/examples/ResellerInvalidDateRangeGreaterThan31DaysExample'
            CustomerReportLimitExceedExample:
              $ref: '#/components/examples/CustomerReportLimitExceedExample'
            InvalidConsumerSSNExample:
              $ref: '#/components/examples/InvalidConsumerSSNExample'
            InvalidConsumerPhoneExample:
              $ref: '#/components/examples/InvalidConsumerPhoneExample'
            InvalidConsumerEmailExample:
              $ref: '#/components/examples/InvalidConsumerEmailExample'
            InvalidValue:
              $ref: '#/components/examples/InvalidValueExample'
    CreateConsumerResponse:
      description: The consumer was successfully created
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreatedConsumer'
    UnauthorizedErrorResponse:
      description: The request lacks valid authentication credentials. Check "Finicity-App-Key" or "Finicity-App-Token".
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            ExpiredTokenExample:
              $ref: '#/components/examples/ExpiredTokenExample'
            MissingFinicityAppKeyExample:
              $ref: '#/components/examples/MissingFinicityAppKeyExample'
            MissingFinicityAppTokenExample:
              $ref: '#/components/examples/MissingFinicityAppTokenExample'
            InvalidFinicityAppTokenExample:
              $ref: '#/components/examples/InvalidFinicityAppTokenExample'
            ExpiredFinicityAppTokenExample:
              $ref: '#/components/examples/ExpiredFinicityAppTokenExample'
            BadCredentialsExample:
              $ref: '#/components/examples/BadCredentialsExample'
        text/plain:
          schema:
            type: string
            example: Invalid (Finicity-App-Key)
    GetConsumerResponse:
      description: The consumer was successfully retrieved
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Consumer'
    ResourceNotFoundErrorResponse:
      description: The resource doesn't exist
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            ConsumerNotFoundExample:
              $ref: '#/components/examples/ConsumerNotFoundExample'
            NoAccountForInstitutionLoginIdExample:
              $ref: '#/components/examples/NoAccountForInstitutionLoginIdExample'
            CustomerNotFoundExample:
              $ref: '#/components/examples/CustomerNotFoundExample'
            NoConsumerForCustomerExample:
              $ref: '#/components/examples/NoConsumerForCustomerExample'
            ResourceNotFoundExample:
              $ref: '#/components/examples/ResourceNotFoundExample'
            NoRegisteredApplicationExample:
              $ref: '#/components/examples/NoRegisteredApplicationExample'
            ResellerNoDataForPartnerExample:
              $ref: '#/components/examples/ResellerNoDataForPartnerExample'
            ResellerNoReportForPartnerExample:
              $ref: '#/components/examples/ResellerNoReportForPartnerExample'
    GetConsumerForCustomerResponse:
      description: The consumer was successfully retrieved
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Consumer'
    ModifyConsumerResponse:
      description: The consumer was successfully updated
    ConflictErrorResponse:
      description: The resource already exists
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            ConsumerExistsConflictExample:
              $ref: '#/components/examples/ConsumerExistsConflictExample'
  parameters:
    CustomerIdParameter:
      description: A customer ID
      name: customerId
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/CustomerId'
      example: '1005061234'
    ConsumerIdParameter:
      description: The consumer ID
      name: consumerId
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/ConsumerId'
      example: 0bf46322c167b562e6cbed9d40e19a4c
  requestBodies:
    CreateConsumerRequest:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NewConsumer'
          examples:
            ConsumerWithAllValues:
              $ref: '#/components/examples/ConsumerWithAllValuesExample'
            ConsumerWithSsnAndPhone:
              $ref: '#/components/examples/ConsumerWithSsnPhoneExample'
            ConsumerWithSsnEmail:
              $ref: '#/components/examples/ConsumerWithSsnEmailExample'
            ConsumerWithBirthdayPhone:
              $ref: '#/components/examples/ConsumerWithBirthdayPhoneExample'
            ConsumerWithBirthdayEmail:
              $ref: '#/components/examples/ConsumerWithBirthdayEmailExample'
            ConsumerWithSsnBirthdayPhone:
              $ref: '#/components/examples/ConsumerWithSsnBirthdayPhoneExample'
            ConsumerWithSsnBirthdayEmail:
              $ref: '#/components/examples/ConsumerWithSsnBirthdayEmailExample'
            ConsumerWithBirthdayPhoneEmail:
              $ref: '#/components/examples/ConsumerWithBirthdayPhoneEmailExample'
            ConsumerWithSsnPhoneEmail:
              $ref: '#/components/examples/ConsumerWithSsnPhoneEmailExample'
    ModifyConsumerRequest:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConsumerUpdate'
  securitySchemes:
    FinicityAppKey:
      name: Finicity-App-Key
      type: apiKey
      in: header
      description: The "Finicity-App-Key" from the developer dashboard
    FinicityAppToken:
      name: Finicity-App-Token
      type: apiKey
      in: header
      description: A token returned by the `/authentication` API