version: 1
default_environment: dev
project_id: 14d8d05f-ddd8-4b34-81c0-5756f1c13c4f
plugins:
  extractors:
  - name: tap-quickbooks
    namespace: tap_quickbooks
    label: Quickbooks
    description: Accounting management platform
    docs: https://hub.meltano.com/extractors/quickbooks.html
    repo: https://github.com/hotgluexyz/tap-quickbooks
    pip_url: git+https://github.com/hotgluexyz/tap-quickbooks.git
    capabilities:
    - properties
    - discover
    - state
    settings_group_validation:
    - - client_id
      - client_secret
      - refresh_token
      - realmId
      - start_date
    settings:
    - name: realmId
      label: Realm ID
    - name: client_id
      kind: password
      label: Client ID
    - name: client_secret
      kind: password
    - name: refresh_token
      kind: password
    - name: start_date
      kind: date_iso8601
      description: Determines how much historical data will be extracted. Please be
        aware that the larger the time period and amount of data, the longer the initial
        extraction can be expected to take.
    - name: is_sandbox
      kind: boolean
      value: false
      description: Use Quickbooks Sandbox
    - name: select_fields_by_default
      kind: boolean
      value: true
      description: Select by default any new fields discovered in Quickbooks objects
    - name: state_message_threshold
      kind: integer
      value: 1000
      description: Generate a STATE message every N records
    - name: max_workers
      kind: integer
      value: 8
      label: Maximum number of threads to use
  loaders:
  - name: target-jsonl
    variant: andyh1203
    pip_url: target-jsonl
  - name: target-csv
    variant: singer-io
    pip_url: target-csv
  - name: target-postgres
    variant: transferwise
    pip_url: pipelinewise-target-postgres
environments:
- name: dev
  config:
    plugins:
      extractors:
      - name: tap-quickbooks
        config:
          realmId: redacted
          start_date: '2021-01-01T00:00:00Z'
          is_sandbox: true
          api_type: BULK
          state_message_threshold: 100
          max_workers: 8
          select_fields_by_default: false
        select:
        - Customer.Id
        - Customer.CompanyName
        - Customer.Balance
        - Customer.BillAddr
        - Customer.CompanyName
        - Invoice.CustomerRef
        load_schema: quickbooks_data
      loaders:
      - name: target-jsonl
      - name: target-csv
      - name: target-postgres
        config:
          host: redacted
          user: redacted
          dbname: redacted
- name: staging
- name: prod
