The Bureau of Economic Analysis National Accounts API

National Income and Product Accounts, Fixed Assets, and related national economic statistics.

OpenAPI Specification

the-bureau-of-economic-analysis-national-accounts-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Bureau of Economic Analysis Industry National Accounts API
  description: The Bureau of Economic Analysis (BEA) Data API provides programmatic access to BEA published economic statistics using industry-standard methods and procedures. The API includes methods for retrieving a subset of statistical data and the metadata that describes it. Available datasets include National Income and Product Accounts (NIPA), Multinational Enterprises (MNE), Fixed Assets, International Transactions Accounts (ITA), International Investment Position (IIP), Input-Output tables, Regional data, GDP by Industry, and more.
  version: 1.0.0
  contact:
    name: Bureau of Economic Analysis Developer Support
    url: https://www.bea.gov/resources/for-developers
  license:
    name: Public Domain
    url: https://www.bea.gov/help/faq/245
servers:
- url: https://apps.bea.gov/api/data
  description: BEA API Production Server
security:
- ApiKeyAuth: []
tags:
- name: National Accounts
  description: National Income and Product Accounts, Fixed Assets, and related national economic statistics.
paths:
  /nipa-data:
    get:
      operationId: getNIPAData
      summary: Get NIPA Data
      description: Retrieves data from the National Income and Product Accounts (NIPA) dataset. NIPA tables cover GDP, personal income, consumer spending, corporate profits, and other national economic aggregates.
      tags:
      - National Accounts
      parameters:
      - name: UserID
        in: query
        required: true
        schema:
          type: string
          format: uuid
      - name: method
        in: query
        required: true
        schema:
          type: string
          enum:
          - GetData
        example: GetData
      - name: DatasetName
        in: query
        required: true
        schema:
          type: string
          enum:
          - NIPA
        example: NIPA
      - name: TableName
        in: query
        required: true
        description: NIPA table name (e.g., T10101 for GDP).
        schema:
          type: string
        example: T10101
      - name: Frequency
        in: query
        required: true
        description: Data frequency.
        schema:
          type: string
          enum:
          - A
          - Q
          - M
        example: Q
      - name: Year
        in: query
        required: true
        description: Year(s) for data retrieval. Use 'X' for all years.
        schema:
          type: string
        example: 2023,2024
      - name: ResultFormat
        in: query
        required: false
        schema:
          type: string
          enum:
          - JSON
          - XML
          default: JSON
      responses:
        '200':
          description: NIPA economic data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponse'
  /fixed-assets-data:
    get:
      operationId: getFixedAssetsData
      summary: Get Fixed Assets Data
      description: Retrieves data from the Fixed Assets dataset covering net stock of fixed assets, depreciation, investment, and related measures for private and government fixed assets in the United States.
      tags:
      - National Accounts
      parameters:
      - name: UserID
        in: query
        required: true
        schema:
          type: string
          format: uuid
      - name: method
        in: query
        required: true
        schema:
          type: string
          enum:
          - GetData
        example: GetData
      - name: DatasetName
        in: query
        required: true
        schema:
          type: string
          enum:
          - FixedAssets
        example: FixedAssets
      - name: TableName
        in: query
        required: true
        description: Fixed assets table name (e.g., FAAt101 for Current-Cost Net Stock).
        schema:
          type: string
        example: FAAt101
      - name: Year
        in: query
        required: true
        schema:
          type: string
        example: 2022,2023
      - name: ResultFormat
        in: query
        required: false
        schema:
          type: string
          enum:
          - JSON
          - XML
          default: JSON
      responses:
        '200':
          description: Fixed assets data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponse'
components:
  schemas:
    Dimension:
      type: object
      properties:
        Name:
          type: string
          description: Name of the dimension (e.g., TableName, Frequency, Year, Line).
        DataType:
          type: string
          description: Data type of the dimension values.
        IsValue:
          type: string
          enum:
          - '0'
          - '1'
          description: Indicates if this dimension contains the actual data value.
    RequestInfo:
      type: object
      properties:
        RequestParam:
          type: array
          items:
            type: object
            properties:
              ParameterName:
                type: string
              ParameterValue:
                type: string
    DataPoint:
      type: object
      properties:
        TableName:
          type: string
          description: Table name for this data point.
        SeriesCode:
          type: string
          description: Series code identifying the specific series.
        LineNumber:
          type: string
          description: Line number in the source table.
        LineDescription:
          type: string
          description: Description of the line item.
        TimePeriod:
          type: string
          description: Time period for the data point (e.g., 2023, 2023Q1).
        CL_UNIT:
          type: string
          description: Classification unit.
        MULT:
          type: string
          description: Multiplier for the data value (e.g., 6 = millions).
        DataValue:
          type: string
          description: The actual data value as a string.
        NoteRef:
          type: string
          description: Reference to note, if applicable.
    DataResponse:
      type: object
      properties:
        BEAAPI:
          type: object
          properties:
            Request:
              $ref: '#/components/schemas/RequestInfo'
            Results:
              type: object
              properties:
                Statistic:
                  type: string
                  description: Name of the statistic returned.
                UnitOfMeasure:
                  type: string
                  description: Unit of measure for the data values.
                PublicTable:
                  type: string
                  description: Name of the public table.
                UTCProductionTime:
                  type: string
                  format: date-time
                  description: Production timestamp of the data.
                NoteRef:
                  type: string
                  description: Reference to any notes on the data.
                Dimensions:
                  type: array
                  items:
                    $ref: '#/components/schemas/Dimension'
                Data:
                  type: array
                  items:
                    $ref: '#/components/schemas/DataPoint'
                Notes:
                  type: array
                  items:
                    type: object
                    properties:
                      NoteRef:
                        type: string
                      NoteText:
                        type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: query
      name: UserID
      description: BEA API key obtained by registering at https://apps.bea.gov/api/signup/