List charge prices
curl --request POST \
--url 'https://clarus-api.com/graphql#ListChargePrices' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-Clarus-Subdomain: <api-key>' \
--data '
{
"query": "query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }"
}
'import requests
url = "https://clarus-api.com/graphql#ListChargePrices"
payload = { "query": "query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }" }
headers = {
"Authorization": "Bearer <token>",
"X-Clarus-Subdomain": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'X-Clarus-Subdomain': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
query: 'query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }'
})
};
fetch('https://clarus-api.com/graphql#ListChargePrices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"charge_prices": {
"all": {
"edges": [
{
"node": {
"id": "1",
"code": "PICK-STD",
"name": "Standard Pick",
"charge_type": "PICK",
"subtype": null,
"unit_of_measure": "item",
"quantity": 1,
"price": 0.5,
"auto_charge": true,
"description": null,
"nominal_code": null
}
}
]
}
}
}
}{
"error": "<string>"
}Charging: Configuration
List charge prices
Retrieve charge prices using GraphQL. Supports filtering by charge type, code, name, and associated charge card.
POST
/
graphql#ListChargePrices
List charge prices
curl --request POST \
--url 'https://clarus-api.com/graphql#ListChargePrices' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-Clarus-Subdomain: <api-key>' \
--data '
{
"query": "query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }"
}
'import requests
url = "https://clarus-api.com/graphql#ListChargePrices"
payload = { "query": "query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }" }
headers = {
"Authorization": "Bearer <token>",
"X-Clarus-Subdomain": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'X-Clarus-Subdomain': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
query: 'query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }'
})
};
fetch('https://clarus-api.com/graphql#ListChargePrices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"charge_prices": {
"all": {
"edges": [
{
"node": {
"id": "1",
"code": "PICK-STD",
"name": "Standard Pick",
"charge_type": "PICK",
"subtype": null,
"unit_of_measure": "item",
"quantity": 1,
"price": 0.5,
"auto_charge": true,
"description": null,
"nominal_code": null
}
}
]
}
}
}
}{
"error": "<string>"
}Query Structure
query($filter: ChargePriceFilterType) {
charge_prices {
all(filter: $filter) {
edges {
node {
id
code
name
charge_type
subtype
unit_of_measure
quantity
price
auto_charge
description
nominal_code
}
}
}
}
}
Filter Argument
All filters are passed inside thefilter argument. Each filter field accepts an input object with operators:
{
"filter": {
"charge_type": {
"eq": "PICK"
}
}
}
Available Filters
| Filter | Input Type | Operators | Description |
|---|---|---|---|
id | IdInputType | eq, gt, gteq, lt, lteq, in, filled | Charge price ID |
code | StringInputType | eq, ilike, like, in, between | Charge price code |
name | StringInputType | eq, ilike, like, in, between | Charge price name |
charge_type | StringInputType | eq, ilike, like, in, between | Type of charge |
charge_card_id | IdInputType | eq, gt, gteq, lt, lteq, in, filled | Associated charge card |
Filter Operators
| Input Type | Operators |
|---|---|
| StringInputType | eq (exact), ilike (case-insensitive partial), like (case-sensitive partial), in (array match), between (range) |
| IntegerInputType | eq, gt, gteq, lt, lteq, between |
| DatetimeInputType | eq, from, to, between |
| BooleanInputType | eq (required) |
| IdInputType | eq, gt, gteq, lt, lteq, in, filled |
PICK-Only Conditions
The following fields are only applicable whencharge_type is PICK. They allow you to define specific pricing rules for different picking scenarios:
| Field | Description |
|---|---|
carrier_id | Specific carrier for carrier-based pick pricing |
carrier_service_id | Specific carrier service level |
order_type_id | Specific order type for order-type-based pricing |
Unit of Measure Values
Theunit_of_measure field supports 21 values across several categories. See charge configuration documentation for detailed descriptions of each.
More fields and filters available via GraphQL introspection.Authorizations
OAuth 2.0 authentication. Use the client credentials or authorization code flow to obtain an access token.
FlowAuthorization Code
- Authorization URL
- https://clarus-api.com/oauth/authorize
- Token URL
- https://clarus-api.com/oauth/token
FlowClient Credentials
- Token URL
- https://clarus-api.com/oauth/token
The subdomain/tenant name identifying which tenant's data to access. Required for all API requests.
Body
application/json
GraphQL query string
Example:
"query($filter: ChargePriceFilterType) { charge_prices { all(filter: $filter) { edges { node { id code name charge_type subtype unit_of_measure quantity price auto_charge description nominal_code } } } } }"
Query variables including the filter object
Show child attributes
Show child attributes
Example:
{
"filter": { "charge_type": { "eq": "PICK" } }
}

