Grid82
grid82.comJoin the waitlist
Permission rulesReplace the whole permission document

Replace the whole permission document

Replace every role and permission at once.

PUT/v1/apps/{appId}/rules

To add, rename or remove one role, prefer roles.create, roles.update and roles.delete. Each permissions[].tables has the shape shown in roles.setPermissions. To change one role’s permissions, prefer roles.setPermissions, which cannot affect others. Send the revision returned by rules.get as baseRevision; if someone else changed the document since, the save is refused with 409 instead of overwriting their change.

Requires the schema:write scope. Operation rules.set. Not an MCP tool. Replacing every role at once is how one agent’s edit erases another role’s. A model adds, renames, removes and narrows roles one at a time with roles.create, roles.update, roles.delete and roles.setPermissions, none of which can reach another role. The whole document stays on the API and the CLI. CLI: grid82 rules set (npx grid82).

Path parameters

NameTypeRequiredDescription
appIdstringyes

Headers

NameTypeRequiredDescription
Idempotency-KeystringnoAny unique string. Sending the same key with the same request again returns the first response (marked Idempotency-Replayed: true) instead of running it twice. Reusing it for a different request is refused with 409. Kept for 24 hours. Up to 255 characters.

Request body

FieldTypeRequiredDescription
version2yes
rolesobject[]yes1 to 100 items.
permissionsobject[]yesUp to 100 items.
baseRevisionstringno

Response

application/json

Success

dataobjectrequired

Use these docs with your AI tools

An AI agent can read this documentation directly. You do not need an account or an API key. Everything here is public and read-only.

Query these docs via MCP

Recommended

Add this server to Claude, Claude Code, Cursor, Mistral, or any tool that supports MCP. Your agent can then search Grid82 documentation and read it in full, instead of answering from memory.

https://grid82.com/docs/mcp
  • searchFind the passages that answer a question.
  • fetchRead one page in full, as Markdown.
  • list_pagesSee every page in this documentation.

Query these docs over HTTP

The same tools also work as plain web requests. Use this for scripts, or for any tool that does not support MCP. There is one endpoint per tool. Arguments go in the query string, and the answer comes back as JSON.

https://grid82.com/docs/api/docs/search?query=custom+domain

Read the OpenAPI description. It is built from the same definitions as the tools, so it always matches what the endpoints do.

Read these docs as Markdown

Add .md to any page URL to get its Markdown source. You can also send the headerAccept: text/markdown to the page URL itself.

To read the whole documentation in one file, open llms-full.txt. For a short index of every page, open llms.txt.