Campfire Chart of Accounts & Company Objects API

Manage the chart of accounts and supporting company objects - departments, vendors, custom fields, custom dimensions and dimension groups, cost allocations, and fixed asset classes - that structure how transactions are coded.

OpenAPI Specification

campfire-hq-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Campfire Developer APIs
  description: 'Campfire''s developer APIs offer granular, programmatic access to Campfire''s AI-native
    ERP: core accounting and the general ledger, chart of accounts and company objects, accounts payable
    and receivable, bank reconciliation, cash management, financial statements, revenue recognition, settings,
    and integrations/webhooks. This document is a representative, API-Evangelist-curated subset modeled
    directly from Campfire''s published OpenAPI at https://api.meetcampfire.com/api/schema (186 documented
    paths). Request and response schemas are simplified to generic objects here; consult the upstream
    schema for full field-level detail.'
  version: 1.0.0
  contact:
    name: Campfire
    url: https://docs.campfire.ai/
  x-modeled-by: API Evangelist (Kin Lane) - curated subset of the upstream Campfire OpenAPI
  x-upstream-openapi: https://api.meetcampfire.com/api/schema?format=json
servers:
- url: https://api.meetcampfire.com
  description: Production server
security:
- knoxApiToken: []
tags:
- name: Accounts Payable
- name: Accounts Receivable
- name: Bank Reconciliation
- name: Cash Management
- name: Company Objects
- name: Core Accounting
- name: Custom Fields
- name: Financial Statements
- name: Integrations
- name: Revenue Recognition
- name: Settings
- name: coa
paths:
  /ca/api/account:
    get:
      operationId: list_accounts
      tags:
      - Cash Management
      summary: List Bank Accounts
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: create_account
      tags:
      - Cash Management
      summary: Create Bank Account
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/cash-basis:
    get:
      operationId: ca_api_cash_basis_retrieve
      tags:
      - Financial Statements
      summary: Get Cash Basis Income Statement
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/file:
    get:
      operationId: ca_api_file_list
      tags:
      - Settings
      summary: List Files
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/get_balance_sheet:
    get:
      operationId: ca_api_get_balance_sheet_retrieve
      tags:
      - Financial Statements
      summary: Get Balance Sheet
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/get_cash_flow:
    get:
      operationId: ca_api_get_cash_flow_retrieve
      tags:
      - Financial Statements
      summary: Get Cash Flow
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/get_income_statement:
    get:
      operationId: ca_api_get_income_statement_retrieve
      tags:
      - Financial Statements
      summary: Get Income Statement
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/get_trial_balance:
    get:
      operationId: ca_api_get_trial_balance_retrieve
      tags:
      - Financial Statements
      summary: Get Trial Balance
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/transaction:
    get:
      operationId: list_bank_transactions
      tags:
      - Cash Management
      summary: List Bank Transactions
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: create_bank_transaction
      tags:
      - Cash Management
      summary: Create Bank Transaction
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /ca/api/v1/custom-fields/reorder:
    post:
      operationId: ca_api_v1_custom_fields_reorder_create
      tags:
      - Custom Fields
      summary: Reorder Custom Fields
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/budgets:
    get:
      operationId: coa_api_budgets_list
      tags:
      - Core Accounting
      summary: List Budgets
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_budgets_create
      tags:
      - Core Accounting
      summary: Create Budget
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/budgets/{id}:
    get:
      operationId: coa_api_budgets_retrieve
      tags:
      - Core Accounting
      summary: Retrieve Budget
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: id
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/entity:
    get:
      operationId: coa_api_entity_list
      tags:
      - Settings
      summary: List Chart Entities
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_entity_create
      tags:
      - Settings
      summary: Create Chart Entity
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/entity/{entity_id}/attachment:
    post:
      operationId: coa_api_entity_attachment_create
      tags:
      - coa
      summary: Upload Entity Invoice Email Attachment
      parameters:
      - name: entity_id
        in: path
        required: true
        schema:
          type: string
        description: entity_id
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/fixed-asset:
    get:
      operationId: coa_api_fixed_asset_list
      tags:
      - Core Accounting
      summary: List Fixed Assets
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_fixed_asset_create
      tags:
      - Core Accounting
      summary: Create Fixed Asset
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/general-ledger:
    get:
      operationId: coa_api_general_ledger_retrieve
      tags:
      - Financial Statements
      summary: Get General Ledger
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/tag:
    get:
      operationId: coa_api_tag_list
      tags:
      - Company Objects
      summary: List Custom Dimensions
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_tag_create
      tags:
      - Company Objects
      summary: Create Custom Dimension
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/transaction:
    get:
      operationId: coa_api_transaction_retrieve
      tags:
      - Core Accounting
      summary: List Chart Transactions
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/v1/bill-draft:
    get:
      operationId: list_bill_drafts
      tags:
      - Accounts Payable
      summary: List Bill Drafts
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: create_bill_draft
      tags:
      - Accounts Payable
      summary: Create Bill Draft
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/v1/bill/:
    get:
      operationId: coa_api_v1_bill_retrieve
      tags:
      - Accounts Payable
      summary: List Accounting Bills
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_v1_bill_create
      tags:
      - Accounts Payable
      summary: Create Accounting Bill
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/v1/credit-memo:
    get:
      operationId: coa_api_v1_credit_memo_list
      tags:
      - Accounts Receivable
      summary: List Credit Memos
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_v1_credit_memo_create
      tags:
      - Accounts Receivable
      summary: Create Credit Memo
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/v1/invoice/:
    get:
      operationId: coa_api_v1_invoice_list
      tags:
      - Accounts Receivable
      summary: List Invoices
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_v1_invoice_create
      tags:
      - Accounts Receivable
      summary: Create Invoice
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/v2/reconciliation:
    get:
      operationId: coa_api_v2_reconciliation_list
      tags:
      - Bank Reconciliation
      summary: List Bank Reconciliation Reports
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_v2_reconciliation_create
      tags:
      - Bank Reconciliation
      summary: Create Bank Reconciliation Report
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /coa/api/vendor:
    get:
      operationId: coa_api_vendor_list
      tags:
      - Company Objects
      summary: List Vendors
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: coa_api_vendor_create
      tags:
      - Company Objects
      summary: Create Vendor
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /integrations/api/v1/webhook:
    get:
      operationId: integrations_api_v1_webhook_list
      tags:
      - Integrations
      summary: List Webhooks
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: integrations_api_v1_webhook_create
      tags:
      - Integrations
      summary: Create Webhook
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /integrations/api/v1/webhook/{id}:
    get:
      operationId: integrations_api_v1_webhook_retrieve
      tags:
      - Integrations
      summary: Retrieve Webhook
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: id
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /rr/api/v1/contracts:
    get:
      operationId: list_contracts
      tags:
      - Revenue Recognition
      summary: List Contracts
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: create_contract
      tags:
      - Revenue Recognition
      summary: Create Contract
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /rr/api/v1/customers:
    get:
      operationId: rr_api_v1_customers_list
      tags:
      - Revenue Recognition
      summary: List Contract Customers
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
  /rr/api/v1/product:
    get:
      operationId: list_products
      tags:
      - Revenue Recognition
      - Accounts Receivable
      summary: List Contract Products
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: create_product
      tags:
      - Revenue Recognition
      - Accounts Receivable
      summary: Create Contract Product
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
components:
  securitySchemes:
    knoxApiToken:
      type: apiKey
      in: header
      name: Authorization
      description: 'Token-based (Knox) authentication. Send the header as: Authorization: Token <your-api-token>.'