Agent Compatibility

GET-Action Security Boundaries

Security boundaries for GET-Action fallback endpoints, including no secrets in URLs, consent, crawler protection, rate limits, and audit logging.

  • Record UAIX-DOC-2751
  • Path /en-us/spec/get-action-security-boundaries/
  • Use Canonical public record

Document status

Public standards page Published on UAIX as part of the current public standards record
Code
UAIX-DOC-2751
Surface
Agent Compatibility
Access
Public and linkable

How to use this page

Use this page as part of the current Agent Compatibility public record, then follow its linked standards pages for the next step.

GET-Action security starts from the assumption that URLs leak. Query strings can enter browser history, server logs, analytics, referrers, caches, screenshots, bookmarks, chat transcripts, and support tickets.

Required controls

  1. Require idempotency_key or nonce for every write-capable GET-Action example.
  2. Reject secrets, tokens, passwords, API keys, bearer values, account identifiers, medical identifiers, payment data, private messages, and regulated identifiers in query strings.
  3. Require explicit consent for publishing, account changes, repository writes, durable memory writes, destructive actions, payments, private data, or regulated contexts.
  4. Apply rate limits, replay handling, crawler protection, and audit logging before action handling.
  5. Keep action URLs out of sitemap promotion and public crawler invitations.
  6. Return human_review_required or rejected instead of executing ambiguous requests.

Ordering rule

Security and consent boundaries must appear before examples that could be copied into production. Examples without nearby boundaries are warnings even when the example URL itself is public-safe.

Safe response examples

Code example
{ "code": "human_review_required", "url": "https://example.org/review/agent_req_002" }
{ "code": "rejected", "url": "https://example.org/docs/get-action-security" }