AppZen Chart of Accounts API

The Chart of Accounts API from AppZen — 3 operation(s) for chart of accounts.

Operations 3

POST /chart-of-accounts Creates a new chart of account segment
GET /chart-of-accounts/{uuid} Returns a chart of account segment's details
POST /chart-of-accounts/search Returns all Chart of Accounts uuid that match the search criteria

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/appzen-chart-of-accounts-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

appzen-chart-of-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Autonomous AP Chart of Accounts API
  description: Public APIs for integrating with Autonomous AP
  version: 2.0.3
servers:
- url: https://<env>.appzen.com/dictionary-data-services
security:
- API Key Header: []
  Customer Id Header: []
  Customer Key Header: []
tags:
- name: Chart of Accounts
paths:
  /chart-of-accounts:
    post:
      tags:
      - Chart of Accounts
      summary: Creates a new chart of account segment
      description: Creates a new chart of account segment in AppZen and returns a uuid that uniquely identifies it. When there already exists a chart of account segment (segment_code), then the operation is an update (the `status` would be `UPDATED` in this case).
      parameters:
      - $ref: '#/components/parameters/chart-of-account-input-schema'
      - in: header
        name: segment-name-for-uniqueness
        required: false
        description: Flag to indicate whether the segment-name should be used to determine (in addition to segment-code and segment-type) whether the payload signifies a unique chart of account
        schema:
          type: boolean
          default: false
      - in: header
        name: merge-segment-lookup-names
        required: false
        description: Flag to indicate whether the segment-lookup-names list in the payload should be concatenated to the corresponding list in an existing chart of account
        schema:
          type: boolean
          default: false
      responses:
        200:
          description: Updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/uuid-updated'
        201:
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/uuid'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-400-error-response'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-401-error-response'
        403:
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-403-error-response'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-404-error-response'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-500-error-response'
  /chart-of-accounts/{uuid}:
    get:
      tags:
      - Chart of Accounts
      summary: Returns a chart of account segment's details
      description: Returns the details of a chart of account segment by uuid
      parameters:
      - $ref: '#/components/parameters/uuid'
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chart-of-account-output-schema'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-400-error-response'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-401-error-response'
        403:
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-403-error-response'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-404-error-response'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-500-error-response'
  /chart-of-accounts/search:
    post:
      tags:
      - Chart of Accounts
      summary: Returns all Chart of Accounts uuid that match the search criteria
      description: Returns a list of the Chart of Accounts uuids that match from-date and end-date
      parameters:
      - $ref: '#/components/parameters/find-query-spec'
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/find-chart-of-accounts-result-spec'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-400-error-response'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-401-error-response'
        403:
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-403-error-response'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-404-error-response'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http-500-error-response'
components:
  schemas:
    http-403-error-response:
      type: object
      properties:
        timestamp:
          type: string
          example: 2019-01-17T16:12:45.977+0000
        status:
          type: string
          example: 403
        error:
          type: string
          example: Forbidden
        message:
          type: string
          example: 'Error code : 17e3338d - You do not have permission to access this resource'
    uuid:
      type: object
      properties:
        uuid:
          type: string
          example: 5fc03087-d265-11e7-b8c6-83e29cd24f4c
        status:
          type: string
          example: CREATED
    date-time:
      type: string
      format: date-time
      example: '2024-03-01T11:01:00Z'
      description: date should be in UTC format
    http-500-error-response:
      type: object
      properties:
        timestamp:
          type: string
          example: 2019-01-17T16:12:45.977+0000
        status:
          type: string
          example: 500
        error:
          type: string
          example: Internal Server Error
        message:
          type: string
          example: 'Error code : 17e3338d - Unable to process your request at this moment, please try again later'
    chart-of-account-output-schema:
      type: object
      properties:
        customer_id:
          type: string
        appzen_segment_type:
          type: string
          description: Value represents how appzen understands the customer segment type. OTHER_SEGMENT should be used to map any customer segment type that does not have correspondence with one of the named appzen segment types (e.g. ACCOUNT_SEGMENT, DEPARTMENT_SEGMENT etc). Multiple OTHER_SEGMENT mappings may be specified, if needed.
          enum:
          - OTHER_SEGMENT
          - LEGAL_ENTITY_SEGMENT
          - COMPANY_SEGMENT
          - ACCOUNT_SEGMENT
          - DEPARTMENT_SEGMENT
          - COST_CENTER_SEGMENT
          - VENDOR_SEGMENT
          - LOCATION_SEGMENT
          - USER_SEGMENT
          - CUSTOMER_SEGMENT
          - PROJECT_SEGMENT
          - SPEND_CATEGORY_SEGMENT
          - REGION_SEGMENT
          - INTERCOMPANY_SEGMENT
          example: LOCATION_SEGMENT
        segment_type:
          type: string
          example: Location
        segment_name:
          type: string
          example: San Jose
        segment_code:
          type: string
          example: SanJose
        parent_segment_type:
          description: Combination of parent_segment_type and parent_segment_code must reference another existing Chart of Account
          type: string
          example: Location
        parent_segment_name:
          type: string
          example: United States
        parent_segment_code:
          description: Combination of parent_segment_type and parent_segment_code must reference another existing Chart of Account
          type: string
          example: USA
        parent_segments:
          description: parent chart of account segments. Combination of segment_type and segment_code must reference another existing Chart of Account
          $ref: '#/components/schemas/segments'
        segment_lookup_names:
          description: optional list of lookup names
          type: array
          example:
          - ca_locations
          - hr_locations
        custom_json:
          type: object
          description: 20 fields allowed, 500 chars per field
        active:
          type: boolean
        valid_start_date:
          allOf:
          - $ref: '#/components/schemas/date-time'
        valid_end_date:
          allOf:
          - $ref: '#/components/schemas/date-time'
        uuid:
          type: string
          example: 5fc03087-d265-11e7-b8c6-83e29cd24f4c
    http-401-error-response:
      type: object
      properties:
        timestamp:
          type: string
          example: 2019-01-17T16:12:45.977+0000
        status:
          type: string
          example: 401
        error:
          type: string
          example: Unauthorized
        message:
          type: string
          example: 'Error code : 17e3338d - Unable to authenticate credentials'
    segments:
      type: object
      properties:
        segment_name:
          type: string
          example: San Jose
        segment_code:
          type: string
          example: SanJose
    http-400-error-response:
      type: object
      properties:
        timestamp:
          type: string
          example: 2019-01-17T16:12:45.977+0000
        status:
          type: string
          example: 400
        error:
          type: string
          example: Bad Request
        message:
          type: string
          example: 'Error code : 17e3338d - Invalid request, please fix and resend'
    uuid-updated:
      type: object
      properties:
        uuid:
          type: string
          example: 5fc03087-d265-11e7-b8c6-83e29cd24f4c
        status:
          type: string
          example: UPDATED
    find-chart-of-accounts-result-spec:
      example:
      - segment-code: '3689490915'
        segment-type: Account
        appzen-uuid: 5e160e12-23af-4e3f-bdd5-65f7bbccdbc8
        is-active: true
        last-appzen-update-time: '2021-12-08T23:30:10.314Z'
      - segment-code: '6649972540'
        segment-type: Legal
        appzen-uuid: e70cd677-2a91-4564-a429-78163beeadcf
        is-active: true
        last-appzen-update-time: '2021-12-08T23:30:12.597Z'
      properties:
        erp-invoice-id:
          type: string
        erp-invoice-status:
          type: string
        appzen-uuid:
          type: string
        appzen-invoice-status:
          type: string
        last-appzen-update-time:
          type: string
    chart-of-account-input-schema:
      type: object
      properties:
        appzen_segment_type:
          type: string
          description: Value represents how appzen understands the customer segment type. OTHER_SEGMENT should be used to map any customer segment type that does not have correspondence with one of the named appzen segment types (e.g. ACCOUNT_SEGMENT, DEPARTMENT_SEGMENT etc). Multiple OTHER_SEGMENT mappings may be specified, if needed.
          enum:
          - OTHER_SEGMENT
          - LEGAL_ENTITY_SEGMENT
          - COMPANY_SEGMENT
          - ACCOUNT_SEGMENT
          - DEPARTMENT_SEGMENT
          - COST_CENTER_SEGMENT
          - VENDOR_SEGMENT
          - LOCATION_SEGMENT
          - USER_SEGMENT
          - CUSTOMER_SEGMENT
          - PROJECT_SEGMENT
          - SPEND_CATEGORY_SEGMENT
          - REGION_SEGMENT
          - INTERCOMPANY_SEGMENT
          example: LOCATION_SEGMENT
        segment_type:
          type: string
          example: Location
        segment_name:
          type: string
          example: San Jose
        segment_code:
          type: string
          example: SanJose
        parent_segment_type:
          description: customer segment type for parent chart of account. Combination of parent_segment_type and parent_segment_code must reference another existing Chart of Account
          type: string
          example: Location
        parent_segment_name:
          description: customer segment name for parent chart of account.
          type: string
          example: United States
        parent_segment_code:
          description: customer segment code for parent chart of account. Combination of parent_segment_type and parent_segment_code must reference another existing Chart of Account
          type: string
          example: USA
        parent_segments:
          description: parent chart of account segments. Combination of segment_type and segment_code must reference another existing Chart of Account
          $ref: '#/components/schemas/segments'
        segment_lookup_names:
          description: optional list of lookup names
          type: array
          example:
          - ca_locations
          - hr_locations
          items:
            type: string
        custom_json:
          type: object
          description: 20 fields allowed, 500 chars per field
          example:
            custom_key1: any-value1
            custom_key2: any-value2
        active:
          type: boolean
          default: true
        valid_start_date:
          allOf:
          - $ref: '#/components/schemas/date-time'
        valid_end_date:
          allOf:
          - $ref: '#/components/schemas/date-time'
      required:
      - appzen_segment_type
      - segment_type
      - segment_name
      - segment_code
    find-query-spec:
      description: The date range must be limited to 7 days
      properties:
        from-last-appzen-update-time:
          description: Start Date Range value for Appzen processing date specified in UTC format
          allOf:
          - $ref: '#/components/schemas/date-time'
        to-last-appzen-update-time:
          description: End Date Range for Appzen processing date specified in UTC format
          allOf:
          - $ref: '#/components/schemas/date-time'
        limit:
          description: Number of matched records to return
          type: number
          default: 1000
          maximum: 1000
          example: 50
      required:
      - from-last-appzen-update-time
      - to-last-appzen-update-time
    http-404-error-response:
      type: object
      properties:
        timestamp:
          type: string
          example: 2019-01-17T16:12:45.977+0000
        status:
          type: string
          example: 404
        error:
          type: string
          example: Not Found
        message:
          type: string
          example: 'Error code : 17e3338d - The resource you specified cannot be not found'
  parameters:
    find-query-spec:
      in: body
      description: Query Criterion for locating Items
      required: true
      name: find-query-spec
      schema:
        $ref: '#/components/schemas/find-query-spec'
    chart-of-account-input-schema:
      in: body
      required: true
      name: chart-of-account-input-schema
      schema:
        $ref: '#/components/schemas/chart-of-account-input-schema'
    uuid:
      in: path
      description: Globally unique identifier for an uploaded document
      required: true
      name: uuid
      schema:
        type: string
  securitySchemes:
    API_Key_Header:
      type: apiKey
      in: header
      name: x-api-key
    Customer_Id_Header:
      type: apiKey
      in: header
      name: customer-id
    Customer_Key_Header:
      type: apiKey
      in: header
      name: customer-key