Consumer Financial Protection Bureau (CFPB) Filings API

HMDA filing management

OpenAPI Specification

cfpb-filings-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0.0
  title: Consumer Complaint Database Aggregations Filings API
  description: The API for searching the CFPB Consumer Complaint Database, which contains over 15 million consumer financial complaint records.
  termsOfService: https://cfpb.github.io/source-code-policy/
  contact:
    name: Report API Issues
    url: https://github.com/cfpb/ccdb5-api/issues
  license:
    name: Creative Commons License CC0
    url: https://github.com/cfpb/ccdb5-api/blob/main/LICENSE
servers:
- url: https://www.consumerfinance.gov/data-research/consumer-complaints/search/api/v1/
  description: Production server
security: []
tags:
- name: Filings
  description: HMDA filing management
paths:
  /institutions/{lei}/filings/{period}:
    get:
      tags:
      - Filings
      summary: Get filing for institution and period
      description: Returns filing details and submission list for an institution in a given filing period
      parameters:
      - $ref: '#/components/parameters/lei'
      - $ref: '#/components/parameters/period'
      responses:
        '200':
          description: Filing details with submissions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Filing'
        '404':
          description: Filing not found
    post:
      tags:
      - Filings
      summary: Create filing for institution and period
      description: Creates a new filing for an institution for the given period
      parameters:
      - $ref: '#/components/parameters/lei'
      - $ref: '#/components/parameters/period'
      responses:
        '201':
          description: Filing created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Filing'
        '400':
          description: Bad request
components:
  schemas:
    SubmissionSummary:
      type: object
      properties:
        submission:
          $ref: '#/components/schemas/Submission'
        transmittalSheet:
          $ref: '#/components/schemas/TransmittalSheet'
    SubmissionStatus:
      type: object
      properties:
        code:
          type: integer
          description: Status code
        message:
          type: string
          description: Status message
    Filing:
      type: object
      properties:
        period:
          type: string
          description: Filing period year
        lei:
          type: string
          description: Legal Entity Identifier
        status:
          $ref: '#/components/schemas/FilingStatus'
        submissions:
          type: array
          items:
            $ref: '#/components/schemas/SubmissionSummary'
    Submission:
      type: object
      properties:
        id:
          type: string
          description: Submission identifier
        status:
          $ref: '#/components/schemas/SubmissionStatus'
        start:
          type: integer
          format: int64
          description: Unix timestamp when submission started
        end:
          type: integer
          format: int64
          description: Unix timestamp when submission ended
    FilingStatus:
      type: object
      properties:
        code:
          type: integer
          description: Status code
        message:
          type: string
          description: Status message
    TransmittalSheet:
      type: object
      properties:
        institutionName:
          type: string
          description: Name of the institution
        year:
          type: integer
          description: Activity year
        quarter:
          type: integer
          description: Quarter (if quarterly filing)
        lei:
          type: string
          description: Legal Entity Identifier
        taxId:
          type: string
          description: Tax ID
        totalLines:
          type: integer
          description: Total number of LAR lines
        contact:
          type: object
          properties:
            name:
              type: string
            phone:
              type: string
            email:
              type: string
            address:
              type: object
  parameters:
    period:
      name: period
      in: path
      required: true
      description: Filing period (year, e.g. 2020)
      schema:
        type: string
        example: '2020'
    lei:
      name: lei
      in: path
      required: true
      description: Legal Entity Identifier of the financial institution
      schema:
        type: string
        example: B90YWS6AFX2LGWOXJ1LD
externalDocs:
  description: Additional API Information
  url: https://cfpb.github.io/api/ccdb/