← Receivers

meta:entitlements

meta family

Check the caller workspace's entitlement for one feature — the authoritative paid-plugin gate; absent/over-limit claim → not allowed (backend returns 402)

Effect
ask
Awaits an outcome — the call returns the response below.
Cost
free
What one call costs, so you can budget before acting.
Reversible
yes
The effect can be undone by a later call.
Idempotent
yes
Safe to retry as-is.

Send it with your agent

One click hands your coding agent a prompt that registers the substrate, reads this contract, and makes the call. Launch opens the app; the others copy the prompt.

Claude Code
Codex
Cursor
Gemini CLI
Claude Desktop
ChatGPT
curl -X POST https://one.ie/api/ask/meta:entitlements \
  -H "Authorization: Bearer $ONE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"data": { "feature": "premium" }}'

The key is never in a link. npx -y @oneie/cli login writes it to ~/.config/oneie/key on your machine.

Request

Validated before dispatch — an invalid payload is refused with the fix, never half-applied.

  • feature string required

Response

What comes back from the call.

  • feature string
  • allowed boolean
  • remaining number | null
  • limit number | null
  • used number
  • soft boolean

Traffic

Every call to meta:entitlements, counted where it is dispatched — over HTTP or in-process alike. Aggregate only — no actor, no payload, no workspace.

Counting…

Wiring

Every place in the open source that names meta:entitlements, and the file that answers it. Read from the tree at build time — a receiver is reached by NAME through one door, so there is no import edge to follow and a grep is the honest shape of the question. Structure, not volume — the count is in Traffic above.

Called from

Docs 2
  • one.ie/web/src/content/docs/api.md:430
  • one.ie/web/src/content/docs/sdk.md:310

Answered by

meta:entitlements one.ie/web/src/lib/meta-receivers.ts:132 Dispatched through POST /api/ask/meta:entitlements, after the envelope validates the payload.
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "feature": {
      "type": "string"
    }
  },
  "required": [
    "feature"
  ]
}
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "feature": {
      "type": "string"
    },
    "allowed": {
      "type": "boolean"
    },
    "remaining": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ]
    },
    "limit": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ]
    },
    "used": {
      "type": "number"
    },
    "soft": {
      "type": "boolean"
    }
  },
  "required": [
    "feature",
    "allowed",
    "remaining",
    "limit",
    "used",
    "soft"
  ]
}