On this page
abcClasses
query · in the family Reading your records
What it does
ABC inventory classification — ranks what you sell into A/B/C classes by value and how fast it moves. “A” items are your most valuable, fastest movers; “C” items the slowest.
THE ABC CLASSIFIER: value × velocity scores with registry cut lines (A < 80% cumulative share, B < 95%, else C); scope REQUIRED bounded (EXACTLY one of logicalFacilityId ⊕ organizationId); abcClassOverride pins a book's class; a zero-velocity scope orders by the value axis alone (scoreBasis: value — -i, disclosed). ARMS the.2 count-scope abcClass filter. DERIVED at read. Requires authentication.
What happens
Reads your sales and stock figures and answers the class list. Changes nothing.
Careful
None — a read. Classes also feed count scopes, so a class you see here can drive which items a stock count visits.
Who may call it
Capability area: Reading your records — Looking up and listing the records of your organization.
- Owner
- System Administrator
- Manager
- Associate Manager
- Warehouse Associate
- Sales Associate
- An API key whose scope allows
api:abcClasses
Arguments
| Name | Type | Required | Notes |
|---|---|---|---|
logicalFacilityId | ID | no | No further notes. |
organizationId | ID | no | No further notes. |
Returns
AbcClassEntry [AbcClassEntry!]! — One classified book: value × velocity with registry cut lines (A < 80% cumulative share, B < 95%, else C; zero-score books are C); abcClassOverride pins the class (overridden: true).
Example request
query ExampleAbcClasses($logicalFacilityId: ID) {
abcClasses(logicalFacilityId: $logicalFacilityId) {
inventoryItemId
variantId
logicalFacilityId
abcClass
scoreBasis
sharePercent
overridden
}
}
Variables:
{
"logicalFacilityId": "01900000-0000-7000-8000-8026f71c0000"
}
Example response
{
"data": {
"abcClasses": [
{
"inventoryItemId": "01900000-0000-7000-8000-9307d9650000",
"variantId": "01900000-0000-7000-8000-8415e73b0000",
"logicalFacilityId": "01900000-0000-7000-8000-8026f71c0000",
"abcClass": "A",
"scoreBasis": "<score basis>",
"sharePercent": 1.5,
"overridden": true
}
]
},
"extensions": {
"at": {
"callId": "01EXAMPLE-CALL-ID",
"version": {
"requested": null,
"serviced": {
"name": "genesis",
"number": 0
}
}
}
}
}
Errors this call can answer
VALIDATION/INVALID— Something in the request is not valid. (VALIDATION)AUTHN/REQUIRED— Sign in to do this. (AUTHN)AUTHZ/FORBIDDEN— Your role does not allow this action. (AUTHZ)RATE_LIMIT/THROTTLED— Too many requests in a short time. (RATE_LIMIT)NOT_FOUND/*— That record could not be found. (NOT_FOUND)