Skip to main content
POST
/
graphql#ListChargeLines
List charge lines
curl --request POST \
  --url 'https://clarus-api.com/graphql#ListChargeLines' \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'X-Clarus-Subdomain: <api-key>' \
  --data '
{
  "query": "query($filter: ChargeLineFilterType) { charge_lines { all(filter: $filter) { edges { node { id code name charge_type quantity price total unit_of_measure description created_at } } } } }"
}
'
{
  "data": {
    "charge_lines": {
      "all": {
        "edges": [
          {
            "node": {
              "id": "1",
              "code": "PICK-001",
              "name": "Picking Charge",
              "charge_type": "picking",
              "quantity": 10,
              "price": 1.5,
              "total": 15,
              "unit_of_measure": "unit",
              "description": "Standard picking charge",
              "created_at": "2026-03-10T08:00:00Z"
            }
          }
        ]
      }
    }
  }
}

Query Structure

query($filter: ChargeLineFilterType) {
  charge_lines {
    all(filter: $filter) {
      edges {
        node {
          id
          code
          name
          charge_type
          quantity
          price
          total
          unit_of_measure
          description
          created_at
        }
      }
    }
  }
}

Filter Argument

All filters are passed inside the filter argument. Each filter field accepts an input object with operators:
{
  "filter": {
    "charge_type": {
      "eq": "picking"
    }
  }
}

Available Filters

FilterInput TypeOperatorsDescription
codeStringInputTypeeq, ilike, like, in, betweenCharge line code
charge_typeStringInputTypeeq, ilike, like, in, betweenType of charge
goods_in_receipt_idIdInputTypeeq, gt, gteq, lt, lteq, in, filledFilter by goods in receipt
goods_out_order_idIdInputTypeeq, gt, gteq, lt, lteq, in, filledFilter by goods out order
created_atDatetimeInputTypeeq, from, to, betweenFilter by creation date

Filter Operators

Input TypeOperators
StringInputTypeeq (exact), ilike (case-insensitive partial), like (case-sensitive partial), in (array match), between (range)
IntegerInputTypeeq, gt, gteq, lt, lteq, between
DatetimeInputTypeeq, from, to, between
BooleanInputTypeeq (required)
IdInputTypeeq, gt, gteq, lt, lteq, in, filled
More fields and filters available via GraphQL introspection.

Authorizations

Authorization
string
header
required

OAuth 2.0 authentication. Use the client credentials or authorization code flow to obtain an access token.

X-Clarus-Subdomain
string
header
required

The subdomain/tenant name identifying which tenant's data to access. Required for all API requests.

Body

application/json
query
string<textarea>
required

GraphQL query string

Example:

"query($filter: ChargeLineFilterType) { charge_lines { all(filter: $filter) { edges { node { id code name charge_type quantity price total unit_of_measure description created_at } } } } }"

variables
object

Query variables including the filter object

Example:
{
"filter": { "charge_type": { "eq": "picking" } }
}

Response

Successful GraphQL response

data
object

Query result data

errors
object[]

GraphQL errors, if any