table:
  schema: public
  name: subscription_installment
object_relationships:
  - name: subscription
    using:
      foreign_key_constraint_on: subscription_id
array_relationships:
  - name: transactions
    using:
      manual_configuration:
        remote_table:
          schema: public
          name: subscription_transaction
        insertion_order: null
        column_mapping:
          installment: installment_number
          subscription_id: subscription_id
select_permissions:
  - role: marketplace
    permission:
      columns:
        - amount
        - created_at
        - due_date
        - id
        - installment
        - paid_at
        - subscription_id
        - updated_at
      filter:
        subscription:
          patient:
            user_id:
              _eq: X-Hasura-User-Id
      allow_aggregations: true
  - role: nutritionist_manager
    permission:
      columns:
        - amount
        - created_at
        - due_date
        - id
        - installment
        - paid_at
        - subscription_id
        - updated_at
      filter: {}
      allow_aggregations: true
  - role: patient
    permission:
      columns:
        - amount
        - created_at
        - due_date
        - id
        - installment
        - paid_at
        - subscription_id
        - updated_at
      filter:
        subscription:
          patient_id:
            _eq: X-Hasura-User-Id
      allow_aggregations: true
  - role: user
    permission:
      columns:
        - amount
        - created_at
        - due_date
        - id
        - installment
        - paid_at
        - subscription_id
        - updated_at
      filter: {}
      allow_aggregations: true
event_triggers:
  - name: emit_installment_invoice
    definition:
      enable_manual: false
      update:
        columns:
          - paid_at
    retry_conf:
      num_retries: 3
      interval_sec: 10
      timeout_sec: 60
    webhook: '{{ACTIONS_HANDLER_URL}}/contract/emit_service_order_when_updated'
    headers:
      - name: Authorization
        value_from_env: ACTIONS_HANDLER_ACCESS_TOKEN
