List the rule types the program accepts
GET /program/rule-types| Scope | program:read |
| Customer session token | Not accepted: call from your server with an API key |
| Rate limit class | read (limits) |
| Idempotency key | Not used |
| MCP tool | charm_list_program_rule_types |
The catalog behind the admin’s “add a rule” pickers: every earning rule type, reward type and tier benefit type this shop may use, each with a JSON Schema of the fields it takes (type, range, choices, default) and the defaults a new rule starts from. Read this before creating or editing a rule; send only keys the schema lists.
Parameters
Section titled “Parameters”| Name | In | Type | Description |
|---|---|---|---|
kind (optional) | query | string: earning, reward, benefit | earning, reward or benefit. Omit for all three. |
Response 200
Section titled “Response 200”Returns ProgramRuleTypeList.
| Field | Type | Description |
|---|---|---|
languages | object or null | (nullable) |
data | array of ProgramRuleType |
{ "languages": { "primary": "primary", "published": [ "published" ] }, "data": [ { "type": "earn", "kind": "earning", "label": "Points per order", "description": "Points for order #1042", "category": "category", "allow_multiple": false, "fulfillment_modes": [ "fulfillment modes" ], "restricted": "restricted", "fields": {}, "defaults": {} } ]}Example
Section titled “Example”curl -X GET "https://charm.appfleece.app/api/v1/program/rule-types" \ -H "Authorization: Bearer chrm_live_..."Errors
Section titled “Errors”unauthorized · invalid_token · insufficient_scope · access_required · validation_error · rate_limited
Every error body carries code, message, request_id and a doc_url pointing at the matching entry in the error catalog.