> ## Documentation Index
> Fetch the complete documentation index at: https://docs.campfire.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve Contract Customer



## OpenAPI

````yaml https://api.meetcampfire.com/api/schema?format=json get /rr/api/v1/customers/{id}
openapi: 3.0.3
info:
  title: Campfire Developer APIs
  version: 1.0.0
  description: >
    ## Introduction

    Campfire's developer APIs offer granular access to Campfire's core
    accounting,

    revenue recognition, and financial data features.


    These APIs are designed to be used by developers to build custom
    integrations,

    automate workflows, and perform any other programmatic operations.
servers:
  - url: https://api.meetcampfire.com
    description: Production server
security: []
tags:
  - name: Cash Management
    description: Operations related to accounts, transactions, and other bank-related data.
  - name: Core Accounting
    description: >-
      Operations related to core accounting data, such as the chart of accounts,
      entity management, and the general ledger.
  - name: Revenue Recognition
    description: >-
      Operations related to revenue recognition, contract management, and
      contract data aggregation.
  - name: Accounts Receivable
    description: Operations related to invoicing and the AR subledger
  - name: Accounts Payable
    description: Operations related to billing and the AP subledger.
  - name: Financial Statements
    description: Operations related to financial statement generation and data aggregation.
  - name: Settings
    description: Operations related to system and accounting settings configuration.
paths:
  /rr/api/v1/customers/{id}:
    get:
      tags:
        - Revenue Recognition
      summary: Retrieve Contract Customer
      operationId: rr_api_v1_customers_retrieve
      parameters:
        - in: path
          name: id
          schema:
            type: integer
          required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractCustomer'
          description: ''
      security:
        - knoxApiToken: []
components:
  schemas:
    ContractCustomer:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        contacts:
          type: array
          items:
            $ref: '#/components/schemas/VendorContact'
        parent_name:
          type: string
          readOnly: true
        stripe_connection_name:
          type: string
          readOnly: true
          nullable: true
        stripe_connection_entity:
          type: integer
          nullable: true
          readOnly: true
        stripe_connection_portal_url:
          type: string
          readOnly: true
          nullable: true
        stripe_connection_portal_enabled:
          type: boolean
          readOnly: true
          nullable: true
        stripe_connection_invoicing_enabled:
          type: boolean
          readOnly: true
          nullable: true
        vendor_custom_field_1_name:
          type: string
          readOnly: true
        payment_term_name_display:
          type: string
          readOnly: true
        last_modified_at:
          type: string
          format: date-time
          readOnly: true
        is_deleted:
          type: boolean
          readOnly: true
          default: false
        deleted_at:
          type: string
          format: date-time
          readOnly: true
          nullable: true
        active_contracts:
          type: integer
          readOnly: true
        completed_contracts:
          type: integer
          readOnly: true
        pending_contracts:
          type: integer
          readOnly: true
        total_contracts:
          type: integer
          readOnly: true
        total_revenue:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_deferred_revenue:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_mrr:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_billed:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_unbilled:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_paid:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_outstanding:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        total_credit_memos:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        credit_memo_applied:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        credit_memo_available:
          type: number
          format: double
          maximum: 10000000000000
          minimum: -10000000000000
          exclusiveMaximum: true
          exclusiveMinimum: true
          readOnly: true
        currency:
          type: string
          readOnly: true
        search_vector:
          type: string
          readOnly: true
          nullable: true
        search_text:
          type: string
          readOnly: true
          nullable: true
        vendor_type:
          nullable: true
          default: vendor
          title: Payee Type
          oneOf:
            - $ref: '#/components/schemas/VendorType391Enum'
            - $ref: '#/components/schemas/BlankEnum'
            - $ref: '#/components/schemas/NullEnum'
        name:
          type: string
          nullable: true
          maxLength: 250
        dba:
          type: string
          nullable: true
          maxLength: 250
        company_name:
          type: string
          nullable: true
          maxLength: 250
        website:
          type: string
          nullable: true
          maxLength: 250
        first_name:
          type: string
          nullable: true
          maxLength: 250
        last_name:
          type: string
          nullable: true
          maxLength: 250
        email:
          type: string
          format: email
          nullable: true
          maxLength: 250
        phone_number:
          type: string
          nullable: true
          maxLength: 250
        mobile_number:
          type: string
          nullable: true
          maxLength: 250
        address_street_1:
          type: string
          nullable: true
          maxLength: 250
        address_street_2:
          type: string
          nullable: true
          maxLength: 250
        city:
          type: string
          nullable: true
          maxLength: 250
        state:
          type: string
          nullable: true
          maxLength: 250
        zip_code:
          type: string
          nullable: true
          maxLength: 250
        country:
          type: string
          nullable: true
          maxLength: 250
        billing_address_street_1:
          type: string
          nullable: true
          maxLength: 250
        billing_address_street_2:
          type: string
          nullable: true
          maxLength: 250
        billing_city:
          type: string
          nullable: true
          maxLength: 250
        billing_state:
          type: string
          nullable: true
          maxLength: 250
        billing_zip_code:
          type: string
          nullable: true
          maxLength: 250
        billing_country:
          type: string
          nullable: true
          maxLength: 250
        shipping_addressee:
          type: string
          nullable: true
          maxLength: 255
        billing_addressee:
          type: string
          nullable: true
          maxLength: 255
        notes:
          type: string
          nullable: true
          maxLength: 250
        business_id_ssn:
          type: string
          nullable: true
          title: Business ID/SSN
          maxLength: 250
        is_1099:
          type: boolean
        vat_number:
          type: string
          nullable: true
          maxLength: 250
        business_type:
          type: string
          nullable: true
          description: Business type classification (e.g., Korean NTS 업태)
          maxLength: 250
        business_category:
          type: string
          nullable: true
          description: Business category classification (e.g., Korean NTS 종목)
          maxLength: 250
        entity_use_code:
          type: string
          nullable: true
          description: >-
            Avalara entity/use code for tax exemptions (e.g., A - Federal
            Government, B - State/Local Govt)
          maxLength: 25
        stripe_customer_id:
          type: string
          nullable: true
          maxLength: 250
        use_stripe_auto_bill:
          type: boolean
          nullable: true
        bill_vendor_id:
          type: string
          nullable: true
          maxLength: 250
        external_id:
          type: string
          nullable: true
          maxLength: 250
        source:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/Source170Enum'
            - $ref: '#/components/schemas/BlankEnum'
            - $ref: '#/components/schemas/NullEnum'
        invoice_message:
          type: string
          nullable: true
        abbreviation:
          type: string
          nullable: true
          maxLength: 250
        created_at:
          type: string
          format: date-time
          readOnly: true
        status:
          $ref: '#/components/schemas/Status372Enum'
        anrok_customer_id:
          type: string
          nullable: true
          maxLength: 250
        terms:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/TermsEnum'
            - $ref: '#/components/schemas/BlankEnum'
            - $ref: '#/components/schemas/NullEnum'
        invoice_labels:
          nullable: true
        invoice_language:
          type: string
          nullable: true
          maxLength: 10
        lineage_array:
          type: array
          items:
            type: string
            maxLength: 50
          nullable: true
          description: Pre-computed lineage array from root to this vendor
        customer:
          type: integer
        parent:
          type: integer
          nullable: true
        stripe_connection:
          type: integer
          nullable: true
        default_expense_category:
          type: integer
          nullable: true
        vendor_custom_field_1:
          type: integer
          nullable: true
        payment_term:
          type: integer
          nullable: true
          description: Payment term for this vendor
      required:
        - active_contracts
        - completed_contracts
        - created_at
        - credit_memo_applied
        - credit_memo_available
        - currency
        - customer
        - deleted_at
        - id
        - is_deleted
        - last_modified_at
        - name
        - parent_name
        - payment_term_name_display
        - pending_contracts
        - search_text
        - search_vector
        - stripe_connection
        - stripe_connection_entity
        - stripe_connection_invoicing_enabled
        - stripe_connection_name
        - stripe_connection_portal_enabled
        - stripe_connection_portal_url
        - total_billed
        - total_contracts
        - total_credit_memos
        - total_deferred_revenue
        - total_mrr
        - total_outstanding
        - total_paid
        - total_revenue
        - total_unbilled
        - vendor_custom_field_1_name
    VendorContact:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          nullable: true
        first_name:
          type: string
          nullable: true
          maxLength: 250
        last_name:
          type: string
          nullable: true
          maxLength: 250
        email:
          type: string
          format: email
          nullable: true
          maxLength: 250
        phone_number:
          type: string
          nullable: true
          maxLength: 250
        mobile_number:
          type: string
          nullable: true
          maxLength: 250
        last_modified_at:
          type: string
          format: date-time
          readOnly: true
        is_deleted:
          type: boolean
          readOnly: true
          default: false
        deleted_at:
          type: string
          format: date-time
          readOnly: true
          nullable: true
      required:
        - deleted_at
        - id
        - is_deleted
        - last_modified_at
    VendorType391Enum:
      enum:
        - vendor
        - customer
        - employee
      type: string
      description: |-
        * `vendor` - Vendor
        * `customer` - Customer
        * `employee` - Employee
    BlankEnum:
      enum:
        - ''
    NullEnum:
      enum:
        - null
    Source170Enum:
      enum:
        - BILL
        - BREX
        - HUBSPOT
        - MANUAL
        - SALESFORCE
      type: string
      description: |-
        * `BILL` - Bill
        * `BREX` - Brex
        * `HUBSPOT` - Hubspot
        * `MANUAL` - Manual
        * `SALESFORCE` - Salesforce
    Status372Enum:
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      description: |-
        * `ACTIVE` - Active
        * `INACTIVE` - Inactive
    TermsEnum:
      enum:
        - custom
        - net_5
        - net_7
        - net_10
        - net_15
        - net_20
        - net_30
        - net_40
        - net_45
        - net_60
        - net_90
        - net_105
        - net_120
        - due_on_receipt
      type: string
      description: |-
        * `custom` - Custom
        * `net_5` - Net 5
        * `net_7` - Net 7
        * `net_10` - Net 10
        * `net_15` - Net 15
        * `net_20` - Net 20
        * `net_30` - Net 30
        * `net_40` - Net 40
        * `net_45` - Net 45
        * `net_60` - Net 60
        * `net_90` - Net 90
        * `net_105` - Net 105
        * `net_120` - Net 120
        * `due_on_receipt` - Due on Receipt
  securitySchemes:
    knoxApiToken:
      type: apiKey
      in: header
      name: Authorization
      description: Token-based authentication with required prefix "Token"

````