Skip to main content
POST
/
graphql#ListChargeCards
List charge cards
curl --request POST \
  --url 'https://clarus-api.com/graphql#ListChargeCards' \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'X-Clarus-Subdomain: <api-key>' \
  --data '
{
  "query": "query($filter: ChargeCardFilterType) { charge_cards { all(filter: $filter) { edges { node { id code name description active } } } } }"
}
'
{
  "data": {
    "charge_cards": {
      "all": {
        "edges": [
          {
            "node": {
              "id": "1",
              "code": "STANDARD",
              "name": "Standard Card",
              "description": "Standard billing profile",
              "active": true
            }
          }
        ]
      }
    }
  }
}

Query Structure

query($filter: ChargeCardFilterType) {
  charge_cards {
    all(filter: $filter) {
      edges {
        node {
          id
          code
          name
          description
          active
        }
      }
    }
  }
}

Filter Argument

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

Available Filters

FilterInput TypeOperatorsDescription
idIdInputTypeeq, gt, gteq, lt, lteq, in, filledCharge card ID
activeBooleanInputTypeeqWhether the charge card is active
codeStringInputTypeeq, ilike, like, in, betweenCharge card code
descriptionStringInputTypeeq, ilike, like, in, betweenDescription
nameStringInputTypeeq, ilike, like, in, betweenCharge card name

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

Charge Configuration Hierarchy

  • Charge Card → Contains multiple Charge Prices (pricing rules)
  • Charge Card → Assigned to Accounts (via Account settings)
  • Charge Prices → Define rates per unit of measure and charge type
  • Charge Windows → Define recurring billing schedules (independent of cards)
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: ChargeCardFilterType) { charge_cards { all(filter: $filter) { edges { node { id code name description active } } } } }"

variables
object

Query variables including the filter object

Example:
{ "filter": { "active": { "eq": true } } }

Response

Successful GraphQL response

data
object

Query result data

errors
object[]

GraphQL errors, if any