Agent management endpoints are called by humans (dashboard session) and by orchestrators
(an organization API key) — never by the
agents themselves. Agents interact through the MCP server. The org key needs
the scope for what it’s doing: agents:read to list or read agents, agents:write for the
mutations (create, budget policy, pause/resume, archive). A write-only key cannot list — the
scopes are independent, not a hierarchy.
Orchestrators can drive most of these as MCP tools instead of REST — create, list, budget
policy, pause/resume, archive — see the management band. Listing
needs agents:read; the mutations need agents:write. Not everything on this page is
machine-callable:PATCH /v1/agents/:id (name/description) and the key mint/revoke routes
remain session-only and have no management tool — they fail even with agents:write.
0 = every payment needs approval · amount = approve above it · null = auto-approve within budget
scopes
—
Restrict which MCP tools the key may call; omit for the full toolset
idempotencyKey
machine
Required when calling with an organization API key; ignored for session callers
The response includes the agent and its API key. Store it immediately — you get one delivery.Precisely how “one delivery” works depends on the caller:
Dashboard session: the key is shown once and never again. If it’s lost, revoke and mint a
new one.
Organization API key: the key is returned once, but a replay of the same
idempotencyKey and payload re-delivers it for roughly 30 minutes — a deliberate
recovery window for a lost response. After that window it is gone the same way, and the replay
returns apiKey: null.
Machine callers must send idempotencyKey. Omitting it returns 400 IDEMPOTENCY_KEY_REQUIRED. Persist a stable, high-entropy value before you call: on any
ambiguous failure (timeout, network error, code-less 5xx, 409 REQUEST_IN_PROGRESS, 409 ORG_NOT_READY, 503 CREATE_RETRYABLE) you replay the same key and payload to recover the
committed agent. Without it, a lost response means an orphaned agent and an unrecoverable
credential.
Key re-delivery is time-boxed to roughly 30 minutes — act on an ambiguous failure immediately.
A replay only re-delivers the raw apiKey while that window is open. After it closes, the replay
still returns the agent but with apiKey: null, mcpConfigBlock: null, and keyDelivery: "expired". Retry promptly and store the key the moment you receive it. Creation draws on the
key’s daily quota; replaying an
already-completed create is free.
keyDelivery: "expired" does NOT mean the key was never delivered — check your own records
before acting on it. It means only that the response arrived after the ~30-minute delivery
window — which can happen on a late replay or on the very first response of a slow create that
spent long enough provisioning. If your original create response actually arrived, that key is
still live and the agent is perfectly usable; the server cannot tell the two cases apart. So do
not treat an expired result as proof the agent is stranded. Confirm from your own delivery
records that no credential was ever stored, and only then treat it as unrecoverable — the
undelivered credential is still the agent’s one active key, so a human must DELETE /v1/agents/:id/keybeforePOST /v1/agents/:id/key (minting straight away returns 409 KEY_ALREADY_EXISTS). The machine alternative is the zombie-archive
sequence — but note an
expired result from a first response has not stamped the durable non-delivery proof the
archive gate needs, so a direct archive_agent there returns 409 KEY_DELIVERY_UNPROVEN and you
must replay the create (to stamp it) before archiving — and because that stamp is best-effort,
retry the replay + archive a few times with backoff if the code recurs, escalating (not looping)
if it persists. Archiving on the expired flag alone can destroy an agent whose key you are
holding.
The budget-policy endpoint updates budgetCents, autoApprovalThresholdCents, perTransactionLimitCents, dailySpendLimitCents, and hourly/daily velocity limits. It takes a version token from the last read for optimistic concurrency — a stale token returns 409 VERSION_CONFLICT, so re-read and retry rather than blind-writing.
Step-up applies to human callers. A session must re-verify (passkey or TOTP). An organization
API key does not — minting the key was itself performed by a human under step-up, and that
ceremony is what authorizes it, so a headless caller is never re-challenged. Reading the current
policy via GET /v1/agents/:id/budget-policy requires agents:write for a key, because it is a
write precondition.
Terminal: revokes the key and detaches the wallet policy. Requires step-up auth for human callers. Archived agents cannot be reactivated.
Organization API keys are heavily restricted here. A key may archive only a zombie of its own
making — an agent that key lineage created, whose bundled-key re-delivery window has closed, that
never authenticated and has no activity, holds a zero balance, and whose keys no human has ever
minted or revoked (any human key management permanently disqualifies the machine path — the
agent is no longer a machine orphan). Note the server cannot prove the key was never delivered
(only that it can no longer be re-delivered and was never used), so confirm from your own records
before archiving.403 MACHINE_ARCHIVE_DENIED is terminal — a human must archive from the dashboard. But not
every non-success is terminal. Two 409s are recoverable — KEY_STILL_DELIVERABLE (replay the
create to recover the key and keep the agent) and KEY_DELIVERY_UNPROVEN — and so are 409 BALANCE_UNVERIFIABLE (balance couldn’t be confirmed zero; retry later) and a 200 carrying a
non-empty walletsFailed array (the local archive committed but a wallet detach failed; re-issue
the DELETE until it comes back empty). Full sequences on the management
band.
For an emergency hard stop, pause the agent and revoke its API key. Everything halts immediately,
and it’s fully reversible.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Reinx","description":"Reinx is the financial command center for your AI workforce — virtual cards and crypto wallets for AI agents, with spending controls enforced at the infrastructure level.","colors":{"primary":"#0A8F73","light":"#00D4AA","dark":"#0A8F73"},"logo":{"light":"https://www.reinx.ai/brand/logo-light.svg","dark":"https://www.reinx.ai/brand/logo-dark.svg","href":"https://reinx.ai"},"favicon":"https://www.reinx.ai/brand/favicon.svg","appearance":{"default":"dark"},"navbar":{"links":[{"href":"https://reinx.ai","label":"Website"},{"href":"https://docs.reinx.ai/support/contact","label":"Support"}]},"seo":{"metatags":{"canonical":"https://docs.reinx.ai"}},"fonts":{"heading":{"family":"Satoshi","weight":700,"source":"https://www.reinx.ai/brand/Satoshi-Variable.woff2","format":"woff2"},"body":{"family":"DM Sans"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"reinx","hasAudioNarration":false,"actualSubdomain":"reinx","customDomains":["docs.reinx.ai"],"gitSource":{"type":"github","owner":"reinx-ai","repo":"reinx","deployBranch":"main","contentDirectory":"docs-site","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6ae19b7545965be6e9726be7","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"API Reference","count":6},{"language":"default","tag":"Concepts","count":4},{"language":"default","tag":"MCP Tools","count":4},{"language":"default","tag":"Getting Started","count":2},{"language":"default","tag":"Orchestrators","count":2},{"language":"default","tag":"Support","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"api-reference/agents","slug":"/api-reference/agents","pageMetadata":{"title":"Agents","description":"Create and manage AI agent accounts","icon":"robot","href":"/api-reference/agents"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Create and manage AI agent accounts\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,Table,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Agent management endpoints are called by humans (dashboard session) and by orchestrators\n(an `,_jsx(_components.a,{href:`/api-reference/authentication#organization-api-keys`,children:`organization API key`}),`) — never by the\nagents themselves. Agents interact through the `,_jsx(_components.a,{href:`/mcp-tools/overview`,children:`MCP server`}),`. The org key needs\nthe scope for what it’s doing: `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`agents:read`})}),` to list or read agents, `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`agents:write`})}),` for the\nmutations (create, budget policy, pause/resume, archive). A write-only key cannot list — the\nscopes are independent, not a hierarchy.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Orchestrators can drive `,_jsx(_components.strong,{children:`most`}),` of these as MCP tools instead of REST — create, list, budget\npolicy, pause/resume, archive — see the `,_jsx(_components.a,{href:`/mcp-tools/management-band`,children:`management band`}),`. Listing\nneeds `,_jsx(_components.code,{children:`agents:read`}),`; the mutations need `,_jsx(_components.code,{children:`agents:write`}),`. `,_jsx(_components.strong,{children:`Not everything on this page is\nmachine-callable:`}),` `,_jsx(_components.code,{children:`PATCH /v1/agents/:id`}),` (name/description) and the key mint/revoke routes\nremain session-only and have no management tool — they fail even with `,_jsx(_components.code,{children:`agents:write`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`create-agent`,children:`Create agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Creates an agent with a non-custodial crypto wallet, a spending policy, and (bundled) its first API key.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Ad Spender\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"teamId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"b2f1c7ce-…\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"budgetCents\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`50000`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Manages Google Ads campaigns\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"autoApprovalThresholdCents\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5000`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Required`}),_jsx(_components.th,{children:`Notes`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`name`})}),_jsx(_components.td,{children:`✓`}),_jsx(_components.td,{children:`1–100 characters`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`teamId`})}),_jsx(_components.td,{children:`✓`}),_jsx(_components.td,{children:`The team whose budget the agent draws from`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`budgetCents`})}),_jsx(_components.td,{children:`✓`}),_jsx(_components.td,{children:`Total budget, integer cents`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`description`})}),_jsx(_components.td,{children:`—`}),_jsx(_components.td,{children:`Up to 500 characters`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`autoApprovalThresholdCents`})}),_jsx(_components.td,{children:`—`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`0`}),` = every payment needs approval · amount = approve above it · `,_jsx(_components.code,{children:`null`}),` = auto-approve within budget`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`scopes`})}),_jsx(_components.td,{children:`—`}),_jsx(_components.td,{children:`Restrict which MCP tools the key may call; omit for the full toolset`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`idempotencyKey`})}),_jsx(_components.td,{children:`machine`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Required when calling with an organization API key`}),`; ignored for session callers`]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`The response includes the agent and its API key. `,_jsx(_components.strong,{children:`Store it immediately — you get one delivery.`})]}),`\n`,_jsx(_components.p,{children:`Precisely how “one delivery” works depends on the caller:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Dashboard session:`}),` the key is shown once and never again. If it’s lost, revoke and mint a\nnew one.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Organization API key:`}),` the key is returned once, but a replay of the `,_jsxs(_components.strong,{children:[`same\n`,_jsx(_components.code,{children:`idempotencyKey`}),` and payload`]}),` re-delivers it for roughly `,_jsx(_components.strong,{children:`30 minutes`}),` — a deliberate\nrecovery window for a lost response. After that window it is gone the same way, and the replay\nreturns `,_jsx(_components.code,{children:`apiKey: null`}),`.`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[`Machine callers must send `,_jsx(_components.code,{children:`idempotencyKey`}),`.`]}),` Omitting it returns `,_jsx(_components.code,{children:`400 IDEMPOTENCY_KEY_REQUIRED`}),`. Persist a stable, high-entropy value `,_jsx(_components.em,{children:`before`}),` you call: on any\nambiguous failure (timeout, network error, code-less 5xx, `,_jsx(_components.code,{children:`409 REQUEST_IN_PROGRESS`}),`, `,_jsx(_components.code,{children:`409 ORG_NOT_READY`}),`, `,_jsx(_components.code,{children:`503 CREATE_RETRYABLE`}),`) you replay the `,_jsx(_components.strong,{children:`same`}),` key and payload to recover the\ncommitted agent. Without it, a lost response means an orphaned agent and an unrecoverable\ncredential.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Key re-delivery is time-boxed to roughly 30 minutes — act on an ambiguous failure immediately.`}),`\nA replay only re-delivers the raw `,_jsx(_components.code,{children:`apiKey`}),` while that window is open. After it closes, the replay\nstill returns the agent but with `,_jsx(_components.code,{children:`apiKey: null`}),`, `,_jsx(_components.code,{children:`mcpConfigBlock: null`}),`, and `,_jsx(_components.code,{children:`keyDelivery: \"expired\"`}),`. Retry promptly and store the key the moment you receive it. Creation draws on the\nkey’s `,_jsx(_components.a,{href:`/api-reference/authentication#daily-creation-quota`,children:`daily quota`}),`; replaying an\nalready-`,_jsx(_components.em,{children:`completed`}),` create is free.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`keyDelivery: \"expired\"`}),` does NOT mean the key was never delivered — check your own records\nbefore acting on it.`]}),` It means only that the response arrived `,_jsx(_components.em,{children:`after`}),` the ~30-minute delivery\nwindow — which can happen on a late replay `,_jsx(_components.strong,{children:`or on the very first response of a slow create`}),` that\nspent long enough provisioning. If your original create response actually arrived, that key is\nstill live and the agent is perfectly usable; the server cannot tell the two cases apart. So do\nnot treat an `,_jsx(_components.code,{children:`expired`}),` result as proof the agent is stranded. Confirm from your own delivery\nrecords that no credential was ever stored, and only then treat it as unrecoverable — the\nundelivered credential is still the agent’s `,_jsx(_components.strong,{children:`one active key`}),`, so a human must `,_jsx(_components.code,{children:`DELETE /v1/agents/:id/key`}),` `,_jsx(_components.em,{children:`before`}),` `,_jsx(_components.code,{children:`POST /v1/agents/:id/key`}),` (minting straight away returns `,_jsx(_components.code,{children:`409 KEY_ALREADY_EXISTS`}),`). The machine alternative is the `,_jsx(_components.a,{href:`/mcp-tools/management-band#archiving-why-your-key-usually-cannot`,children:`zombie-archive\nsequence`}),` — but note an\n`,_jsx(_components.code,{children:`expired`}),` result from a first response has `,_jsx(_components.strong,{children:`not`}),` stamped the durable non-delivery proof the\narchive gate needs, so a direct `,_jsx(_components.code,{children:`archive_agent`}),` there returns `,_jsx(_components.code,{children:`409 KEY_DELIVERY_UNPROVEN`}),` and you\nmust replay the create (to stamp it) before archiving — and because that stamp is best-effort,\nretry the replay + archive a few times with backoff if the code recurs, escalating (not looping)\nif it persists. Archiving on the `,_jsx(_components.code,{children:`expired`}),` flag alone can destroy an agent whose key you are\nholding.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`list-agents`,children:`List agents`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`GET`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Returns the organization’s agents. Optional filters: `,_jsx(_components.code,{children:`projectId`}),`, `,_jsx(_components.code,{children:`teamId`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`update-agent`,children:`Update agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`PATCH`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # name, description, appearance`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`PATCH`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id/budget-policy`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # budget + spending ceilings (step-up auth)`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The budget-policy endpoint updates `,_jsx(_components.code,{children:`budgetCents`}),`, `,_jsx(_components.code,{children:`autoApprovalThresholdCents`}),`, `,_jsx(_components.code,{children:`perTransactionLimitCents`}),`, `,_jsx(_components.code,{children:`dailySpendLimitCents`}),`, and hourly/daily velocity limits. It takes a `,_jsx(_components.code,{children:`version`}),` token from the last read for optimistic concurrency — a stale token returns `,_jsx(_components.code,{children:`409 VERSION_CONFLICT`}),`, so re-read and retry rather than blind-writing.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Step-up applies to human callers.`}),` A session must re-verify (passkey or TOTP). An organization\nAPI key does not — minting the key was itself performed by a human under step-up, and that\nceremony is what authorizes it, so a headless caller is never re-challenged. Reading the current\npolicy via `,_jsx(_components.code,{children:`GET /v1/agents/:id/budget-policy`}),` requires `,_jsx(_components.code,{children:`agents:write`}),` for a key, because it is a\nwrite precondition.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`pause-and-resume`,children:`Pause and resume`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id/pause`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id/resume`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Pausing is instant and reversible — every payment is denied while paused, and the API key stays intact. See `,_jsx(_components.a,{href:`/concepts/agent-lifecycle`,children:`Agent Lifecycle`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`api-keys`,children:`API keys`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id/key`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # mint a new key (step-up auth)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`DELETE`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id/key`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # revoke the active key (step-up auth)`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`One active key per agent. Minting for an archived agent returns `,_jsx(_components.code,{children:`409 AGENT_ARCHIVED`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`archive-agent`,children:`Archive agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`DELETE`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /v1/agents/:id`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Terminal: revokes the key and detaches the wallet policy. Requires step-up auth for human callers. Archived agents cannot be reactivated.`}),`\n`,_jsxs(Warning,{children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Organization API keys are heavily restricted here.`}),` A key may archive only a `,_jsx(_components.em,{children:`zombie of its own\nmaking`}),` — an agent that key lineage created, whose bundled-key re-delivery window has closed, that\nnever authenticated and has no activity, holds a zero balance, `,_jsx(_components.strong,{children:`and whose keys no human has ever\nminted or revoked`}),` (any human key management permanently disqualifies the machine path — the\nagent is no longer a machine orphan). Note the server cannot prove the key was never `,_jsx(_components.em,{children:`delivered`}),`\n(only that it can no longer be re-delivered and was never used), so confirm from your own records\nbefore archiving.`]}),_jsxs(_components.p,{children:[_jsx(_components.code,{children:`403 MACHINE_ARCHIVE_DENIED`}),` is terminal — a human must archive from the dashboard. But `,_jsx(_components.strong,{children:`not\nevery non-success is terminal.`}),` Two `,_jsx(_components.code,{children:`409`}),`s are recoverable — `,_jsx(_components.code,{children:`KEY_STILL_DELIVERABLE`}),` (replay the\ncreate to recover the key and keep the agent) and `,_jsx(_components.code,{children:`KEY_DELIVERY_UNPROVEN`}),` — and so are `,_jsx(_components.code,{children:`409 BALANCE_UNVERIFIABLE`}),` (balance couldn’t be confirmed zero; retry later) and a `,_jsx(_components.code,{children:`200`}),` carrying a\nnon-empty `,_jsx(_components.code,{children:`walletsFailed`}),` array (the local archive committed but a wallet detach failed; re-issue\nthe `,_jsx(_components.code,{children:`DELETE`}),` until it comes back empty). Full sequences on the `,_jsx(_components.a,{href:`/mcp-tools/management-band#archiving-why-your-key-usually-cannot`,children:`management\nband`}),`.`]})]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`For an emergency hard stop, pause the agent and revoke its API key. Everything halts immediately,\nand it’s fully reversible.`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Agents","description":"Create and manage AI agent accounts","icon":"robot","href":"/api-reference/agents"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Create agent","slug":"create-agent","depth":2,"children":[]},{"title":"List agents","slug":"list-agents","depth":2,"children":[]},{"title":"Update agent","slug":"update-agent","depth":2,"children":[]},{"title":"Pause and resume","slug":"pause-and-resume","depth":2,"children":[]},{"title":"API keys","slug":"api-keys","depth":2,"children":[]},{"title":"Archive agent","slug":"archive-agent","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"reinx","siteName":"Reinx","title":"Agents - Reinx","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-29T09:54:43.529Z","originalFileLocation":"api-reference/agents.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create and manage AI agent accounts\">\u003cmeta data-mint-head name=\"application-name\" content=\"Reinx\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/svg+xml\" sizes=\"180x180\" href=\"https://www.reinx.ai/brand/favicon.svg\">\u003clink data-mint-head rel=\"icon\" type=\"image/svg+xml\" sizes=\"32x32\" href=\"https://www.reinx.ai/brand/favicon.svg\">\u003clink data-mint-head rel=\"icon\" type=\"image/svg+xml\" sizes=\"16x16\" href=\"https://www.reinx.ai/brand/favicon.svg\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/svg+xml\" href=\"https://www.reinx.ai/brand/favicon.svg\">\u003cmeta data-mint-head property=\"og:title\" content=\"Agents - Reinx\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create and manage AI agent accounts\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Reinx\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.reinx.ai/api-reference/agents\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://reinx.mintlify.site/_mintlify/api/og/v2?division=API+Reference\u0026amp;title=Agents\u0026amp;description=Create+and+manage+AI+agent+accounts\u0026amp;theme=3790eb575f21c4882b172cf4\u0026amp;signature=0a23ccb03fdf18d67ae49029777c0cb8504d99d71a7c5e8c682876ddab47fe51\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Agents - Reinx\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create and manage AI agent accounts\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://reinx.mintlify.site/_mintlify/api/og/v2?division=API+Reference\u0026amp;title=Agents\u0026amp;description=Create+and+manage+AI+agent+accounts\u0026amp;theme=3790eb575f21c4882b172cf4\u0026amp;signature=0a23ccb03fdf18d67ae49029777c0cb8504d99d71a7c5e8c682876ddab47fe51\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/reinx/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Reinx\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0A8F73\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.reinx.ai/api-reference/agents\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/agents.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.reinx.ai/#organization\",\"name\":\"Reinx\",\"url\":\"https://docs.reinx.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.reinx.ai/brand/logo-light.svg\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.reinx.ai#website\",\"name\":\"Reinx\",\"url\":\"https://docs.reinx.ai\",\"publisher\":{\"@id\":\"https://docs.reinx.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.reinx.ai/api-reference/agents#webpage\",\"url\":\"https://docs.reinx.ai/api-reference/agents\",\"name\":\"Agents\",\"description\":\"Create and manage AI agent accounts\",\"dateModified\":\"2026-07-29T09:54:43.529Z\",\"isPartOf\":{\"@id\":\"https://docs.reinx.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.reinx.ai/api-reference/agents#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.reinx.ai/api-reference/agents#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Reference\",\"item\":\"https://docs.reinx.ai/api-reference/authentication\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Agents\",\"item\":\"https://docs.reinx.ai/api-reference/agents\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.reinx.ai/api-reference/agents#article\",\"headline\":\"Agents\",\"name\":\"Agents\",\"description\":\"Create and manage AI agent accounts\",\"url\":\"https://docs.reinx.ai/api-reference/agents\",\"mainEntityOfPage\":{\"@id\":\"https://docs.reinx.ai/api-reference/agents#webpage\"},\"dateModified\":\"2026-07-29T09:54:43.529Z\",\"publisher\":{\"@id\":\"https://docs.reinx.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.reinx.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Reinx\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Reinx","nav":{"global":null,"groups":[{"group":"Getting Started","pages":[{"title":"Introduction","icon":"book-open","href":"/getting-started/introduction"},{"title":"Quickstart","icon":"rocket","href":"/getting-started/quickstart"}]},{"group":"Concepts","pages":[{"title":"Spending Policies","icon":"shield-check","href":"/concepts/spending-policies"},{"title":"Approvals","icon":"user-check","href":"/concepts/approvals"},{"title":"Agent Lifecycle","icon":"arrows-rotate","href":"/concepts/agent-lifecycle"},{"title":"Receiving Funds","icon":{"name":"arrow-down-to-line","library":"lucide"},"href":"/concepts/receiving-funds"}]},{"group":"MCP Tools","pages":[{"title":"MCP Server Overview","icon":"plug","href":"/mcp-tools/overview"},{"title":"Payment Workflow","icon":"arrows-spin","href":"/mcp-tools/payment-workflow"},{"title":"Tool Reference","icon":"list","href":"/mcp-tools/tool-reference"},{"title":"Management Band","icon":"sliders","href":"/mcp-tools/management-band"}]},{"group":"Orchestrators","pages":[{"title":"Organization API Keys","icon":"key","href":"/org-keys/overview"},{"title":"Limits \u0026 Boundaries","icon":"ban","href":"/org-keys/deny-list"}]},{"group":"API Reference","pages":[{"title":"Authentication","description":"How to authenticate with the Reinx API — agent keys, organization API keys, scopes, bindings, rate limits, and error codes","icon":"key","href":"/api-reference/authentication"},{"title":"Agents","icon":"robot","href":"/api-reference/agents"},{"title":"Approvals","description":"Review and resolve pending agent payments","icon":"user-check","href":"/api-reference/approvals"},{"title":"Transactions","icon":"credit-card","href":"/api-reference/transactions"},{"title":"Webhooks","icon":{"name":"webhook","library":"lucide"},"href":"/api-reference/webhooks"},{"title":"Errors \u0026 Rate Limits","icon":{"name":"triangle-alert","library":"lucide"},"href":"/api-reference/errors"}]},{"group":"Support","pages":[{"title":"Contact Support","icon":{"name":"life-buoy","library":"lucide"},"href":"/support/contact"}]}]},"basePath":"","title":"Agents - Reinx","buildId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","deploymentId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","dynamics":[],"chunks":[]}