Rename an API key or replace its IP allowlist. Admin only. You normally do this in the dashboard.
When allowedIps is set, requests that use the key from any other address are refused with 403 IP_NOT_ALLOWED; the error message includes the address the request came from. [] removes the restriction. The change applies to every request within 30 seconds.
Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key’s scope can’t be changed; create a new key with the scope you need instead.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Hyperprop Platform API","colors":{"primary":"#253CFF","light":"#253CFF","dark":"#253CFF"},"logo":{"light":"https://mintcdn.com/hyperprop-401fc39d/snMIX7SYzcFqAv9j/logo/light.svg?fit=max\u0026auto=format\u0026n=snMIX7SYzcFqAv9j\u0026q=85\u0026s=e3a0a071fb4ba3ae53ef978c23cc38a3","dark":"https://mintcdn.com/hyperprop-401fc39d/snMIX7SYzcFqAv9j/logo/dark.svg?fit=max\u0026auto=format\u0026n=snMIX7SYzcFqAv9j\u0026q=85\u0026s=1e52fc25e71c2a6a9e047b4fbd60dae4","href":"https://hyperprop.com"},"favicon":"https://mintcdn.com/hyperprop-401fc39d/snMIX7SYzcFqAv9j/favicon.svg?fit=max\u0026auto=format\u0026n=snMIX7SYzcFqAv9j\u0026q=85\u0026s=760656e341413d4cd9dae53925c04cf6","navbar":{"primary":{"type":"button","label":"Open Dashboard","href":"https://portal.hyperprop.com"}},"footer":{"socials":{"x":"https://x.com/hyperpropcom","github":"https://github.com/Hyperprop-LLC-FZ"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"hyperprop-401fc39d","hasAudioNarration":false,"actualSubdomain":"hyperprop-401fc39d","customDomains":["docs.hyperprop.com"],"gitSource":{"type":"github","owner":"hyperprop-llc-fz","repo":"hyperprop-mintlify","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae5d1de3aae848cfc9694c0","collectionId":"1f66c739-0507-478c-a46e-e8d2f186b08f","liveDeploymentHistoryId":"6ae5d1de3aae848cfc9694c0","schemaVersion":"v3"},"feedback":{"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae5d1de3aae848cfc9694c0","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"API Reference","count":197},{"language":"default","tag":"Platform API","count":155},{"language":"default","tag":"Trade API","count":42},{"language":"default","tag":"Documentation","count":33},{"language":"default","tag":"Trading accounts","count":29},{"language":"default","tag":"Mass credit","count":23},{"language":"default","tag":"Webhooks","count":13},{"language":"default","tag":"Orders","count":12},{"language":"default","tag":"Time Machine","count":11},{"language":"default","tag":"Guides","count":10}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"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":"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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#navbar nav-logo img,nav-logo img{height:2rem!important;width:auto}@media (max-width:640px){pre{max-width:100%;overflow-x:auto}pre code{white-space:pre;word-break:normal}#content-area table,.prose table{display:block;max-width:100%;overflow-x:auto}}html.dark pre.shiki.shiki-themes,html[data-theme=dark] pre.shiki.shiki-themes{background-color:var(--shiki-dark-bg)!important;color:var(--shiki-dark)!important}html.dark pre.shiki.shiki-themes span,html[data-theme=dark] pre.shiki.shiki-themes span{color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}"}],"page":{"pagePath":"platform-api/api-keys/update-an-api-key","slug":"/platform-api/api-keys/update-an-api-key","pageMetadata":{"title":"Update an API key","description":"Rename an API key or replace its IP allowlist. **Admin only.** You normally do this in the dashboard.\n\nWhen `allowedIps` is set, requests that use the key from any other address are refused with `403 IP_NOT_ALLOWED`; the error message includes the address the request came from. `[]` removes the restriction. The change applies to every request within 30 seconds.\n\nCheck the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key's `scope` can't be changed; create a new key with the scope you need instead.","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/api-keys/{keyId}","href":"/platform-api/api-keys/update-an-api-key","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Rename an API key or replace its IP allowlist. \", _jsx(_components.strong, {\n children: \"Admin only.\"\n }), \" You normally do this in the dashboard.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"When \", _jsx(_components.code, {\n children: \"allowedIps\"\n }), \" is set, requests that use the key from any other address are refused with \", _jsx(_components.code, {\n children: \"403 IP_NOT_ALLOWED\"\n }), \"; the error message includes the address the request came from. \", _jsx(_components.code, {\n children: \"[]\"\n }), \" removes the restriction. The change applies to every request within 30 seconds.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key’s \", _jsx(_components.code, {\n children: \"scope\"\n }), \" can’t be changed; create a new key with the scope you need instead.\"]\n })]\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}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Update an API key","description":"Rename an API key or replace its IP allowlist. **Admin only.** You normally do this in the dashboard.\n\nWhen `allowedIps` is set, requests that use the key from any other address are refused with `403 IP_NOT_ALLOWED`; the error message includes the address the request came from. `[]` removes the restriction. The change applies to every request within 30 seconds.\n\nCheck the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key's `scope` can't be changed; create a new key with the scope you need instead.","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/api-keys/{keyId}","href":"/platform-api/api-keys/update-an-api-key","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Update an API key","operationId":"patchV1OrganizationApikeysKeyid","description":"Rename an API key or replace its IP allowlist. **Admin only.** You normally do this in the dashboard.\n\nWhen `allowedIps` is set, requests that use the key from any other address are refused with `403 IP_NOT_ALLOWED`; the error message includes the address the request came from. `[]` removes the restriction. The change applies to every request within 30 seconds.\n\nCheck the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key's `scope` can't be changed; create a new key with the scope you need instead.","parameters":["381ffaf8-b983-4f95-ba25-4b9cd41ba5a2"],"requestBody":"b8de81ae-e6ca-4b9a-9494-75ce3b2076ee","tags":["API keys"],"security":["ee8ad655-4f3b-423d-86c4-bccf78e404d5"],"responses":{"200":"d7fc0d58-0173-41e2-b03b-0fac79d19bc3","400":"c87254fd-7e2a-42ad-9f4b-efea05068fea","401":"dbc1540c-44a0-4b5f-bfe6-404946e5a31d","403":"142d5ad0-6f34-478f-9a79-bd8b17dda6f9","404":"ca531538-7c0d-489f-a6c5-db2fa64c455e","500":"5459b847-e47c-4709-bbe4-b423d7b2e21a"},"method":"patch","type":"path","servers":["b1b94e1f-ddd0-4114-9252-f19cb678359d"],"path":"/v1/organization/api-keys/{keyId}","baseUrlOptions":["https://api.hyperprop.com/platform"],"title":"Update an API key","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"381ffaf8-b983-4f95-ba25-4b9cd41ba5a2":{"description":"API key ID (from the list endpoint)","x-format":{"guid":true},"name":"keyId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"description":"API key ID (from the list endpoint)","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"New label for the key","example":"Production backend","minLength":1,"maxLength":100,"uniqueKey":"name","typeLabel":"string"},"allowedIps":{"type":"array","description":"Replaces the key's IP allowlist. Send `[]` to allow any address again. Up to 50 IPv4/IPv6 addresses or CIDR blocks.","example":["203.0.113.7/32","198.51.100.0/24"],"maxItems":50,"items":{"type":"string","maxLength":64,"x-convert":{"trim":true},"uniqueKey":"allowedIps.items.[INDEX]","typeLabel":"string"},"uniqueKey":"allowedIps","typeLabel":"string[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"Production backend","allowedIps":["203.0.113.7/32","198.51.100.0/24"]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"d7fc0d58-0173-41e2-b03b-0fac79d19bc3":{"description":"API key updated","content":{"*/*":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"uniqueKey":"success","typeLabel":"boolean"},"message":{"type":"string","example":"API key updated. The change applies to every request within 30 seconds.","uniqueKey":"message","typeLabel":"string"},"data":{"type":"object","example":{"id":"77777777-7777-4777-8777-777777777777","name":"Production backend","keyPrefix":"hp_live_a1b2c3d4","permissions":["read","write","admin"],"scope":"full","allowedIps":["203.0.113.7/32","198.51.100.0/24"],"isActive":true,"lastUsedAt":"2026-10-30T09:12:00.000Z","expiresAt":null,"createdAt":"2026-03-04T16:13:19.211Z"},"properties":{"id":{"type":"string","uniqueKey":"data.id","typeLabel":"string"},"name":{"type":"string","uniqueKey":"data.name","typeLabel":"string"},"keyPrefix":{"type":"string","uniqueKey":"data.keyPrefix","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"data.permissions.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.permissions","typeLabel":"string[]"},"scope":{"type":"string","description":"`full`: read and write. `read_only`: `GET` requests only (and the trading stream token); anything else returns `403 READ_ONLY_KEY`.","example":"full","enum":["full","read_only"],"uniqueKey":"data.scope","typeLabel":"enum\u003cstring>"},"allowedIps":{"type":"array","description":"IPv4/IPv6 addresses or CIDR blocks the key may be used from (up to 50). Requests from other addresses return `403 IP_NOT_ALLOWED`. Empty means any address. A single address is stored as `/32` (IPv4) or `/128` (IPv6).","example":["203.0.113.7/32","198.51.100.0/24"],"maxItems":50,"items":{"type":"string","maxLength":64,"x-convert":{"trim":true},"uniqueKey":"data.allowedIps.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.allowedIps","typeLabel":"string[]"},"isActive":{"type":"boolean","uniqueKey":"data.isActive","typeLabel":"boolean"},"lastUsedAt":{"type":"string","uniqueKey":"data.lastUsedAt","typeLabel":"string"},"expiresAt":{"type":"string","uniqueKey":"data.expiresAt","typeLabel":"string"},"createdAt":{"type":"string","uniqueKey":"data.createdAt","typeLabel":"string"}},"uniqueKey":"data","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"message":"API key updated. The change applies to every request within 30 seconds.","data":{"id":"77777777-7777-4777-8777-777777777777","name":"Production backend","keyPrefix":"hp_live_a1b2c3d4","permissions":["read","write","admin"],"scope":"full","allowedIps":["203.0.113.7/32","198.51.100.0/24"],"isActive":true,"lastUsedAt":"2026-10-30T09:12:00.000Z","expiresAt":null,"createdAt":"2026-03-04T16:13:19.211Z"}}}},"exampleType":"generated"}},"exampleType":"generated"},"c87254fd-7e2a-42ad-9f4b-efea05068fea":{"description":"Not an IPv4/IPv6 address or CIDR block: 203.0.113.300","content":{"*/*":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false on errors","example":false,"uniqueKey":"success","typeLabel":"boolean"},"statusCode":{"type":"number","example":400,"uniqueKey":"statusCode","typeLabel":"number"},"error":{"type":"string","example":"Bad Request","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","example":"Not an IPv4/IPv6 address or CIDR block: 203.0.113.300","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable error code — switch on this, not on message text","example":"INVALID_IP_ALLOWLIST","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"statusCode":400,"error":"Bad Request","message":"Not an IPv4/IPv6 address or CIDR block: 203.0.113.300","code":"INVALID_IP_ALLOWLIST"}}},"exampleType":"generated"}},"exampleType":"generated"},"dbc1540c-44a0-4b5f-bfe6-404946e5a31d":{"description":"Authentication required","content":{"*/*":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false on errors","example":false,"uniqueKey":"success","typeLabel":"boolean"},"statusCode":{"type":"number","example":401,"uniqueKey":"statusCode","typeLabel":"number"},"error":{"type":"string","example":"Unauthorized","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","example":"Authentication required","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable error code — switch on this, not on message text","example":"UNAUTHORIZED","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"statusCode":401,"error":"Unauthorized","message":"Authentication required","code":"UNAUTHORIZED"}}},"exampleType":"generated"}},"exampleType":"generated"},"142d5ad0-6f34-478f-9a79-bd8b17dda6f9":{"description":"Access denied","content":{"*/*":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false on errors","example":false,"uniqueKey":"success","typeLabel":"boolean"},"statusCode":{"type":"number","example":403,"uniqueKey":"statusCode","typeLabel":"number"},"error":{"type":"string","example":"Forbidden","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","example":"Access denied","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable error code — switch on this, not on message text","example":"FORBIDDEN","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"statusCode":403,"error":"Forbidden","message":"Access denied","code":"FORBIDDEN"}}},"exampleType":"generated"}},"exampleType":"generated"},"ca531538-7c0d-489f-a6c5-db2fa64c455e":{"description":"API key not found","content":{"*/*":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false on errors","example":false,"uniqueKey":"success","typeLabel":"boolean"},"statusCode":{"type":"number","example":404,"uniqueKey":"statusCode","typeLabel":"number"},"error":{"type":"string","example":"Not Found","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","example":"API key not found","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable error code — switch on this, not on message text","example":"API_KEY_NOT_FOUND","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"statusCode":404,"error":"Not Found","message":"API key not found","code":"API_KEY_NOT_FOUND"}}},"exampleType":"generated"}},"exampleType":"generated"},"5459b847-e47c-4709-bbe4-b423d7b2e21a":{"description":"An unexpected error occurred","content":{"*/*":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false on errors","example":false,"uniqueKey":"success","typeLabel":"boolean"},"statusCode":{"type":"number","example":500,"uniqueKey":"statusCode","typeLabel":"number"},"error":{"type":"string","example":"Internal Server Error","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","example":"An unexpected error occurred","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"Machine-readable error code — switch on this, not on message text","example":"INTERNAL_ERROR","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"statusCode":500,"error":"Internal Server Error","message":"An unexpected error occurred","code":"INTERNAL_ERROR"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"ee8ad655-4f3b-423d-86c4-bccf78e404d5":{"X-API-Key":{"type":"apiKey","name":"X-API-Key","in":"header","description":"Organization API key. Format: \"hp_live_{key}\". Organization admins manage the key in the dashboard.","scopes":[],"schemeName":"X-API-Key"}}},"servers":{"b1b94e1f-ddd0-4114-9252-f19cb678359d":{"url":"https://api.hyperprop.com/platform","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","name":"X-API-Key","in":"header","description":"Organization API key. Format: \"hp_live_{key}\". Organization admins manage the key in the dashboard.","scopes":[],"schemeName":"X-API-Key"},"schema":{"title":"X-API-Key","type":"string","description":"Organization API key. Format: \"hp_live_{key}\". Organization admins manage the key in the dashboard.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"X-API-Key","name":"X-API-Key"}],"title":"X-API-Key"}]},"originalFileLocation":"https://api.hyperprop.com/platform/openapi.json"},"subdomain":"hyperprop-401fc39d","siteName":"Hyperprop Platform API","title":"Update an API key - Hyperprop Platform API","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-31T11:23:51.190Z","originalFileLocation":"platform-api/api-keys/update-an-api-key.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=\"system\"}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=\"Rename an API key or replace its IP allowlist. Admin only. You normally do this in the dashboard. When allowedIps is set, requests that use the key from any other address are refused with 403 IP_NOT_ALLOWED; the error message includes the address the request came from. [] removes the restriction. The change applies to every request within 30 seconds. Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key\u0026#x27;s scope can\u0026#x27;t be changed; create a new key with the scope you need instead.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Hyperprop Platform API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update an API key - Hyperprop Platform API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Rename an API key or replace its IP allowlist. Admin only. You normally do this in the dashboard. When allowedIps is set, requests that use the key from any other address are refused with 403 IP_NOT_ALLOWED; the error message includes the address the request came from. [] removes the restriction. The change applies to every request within 30 seconds. Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key\u0026#x27;s scope can\u0026#x27;t be changed; create a new key with the scope you need instead.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Hyperprop Platform API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://hyperprop-401fc39d.mintlify.app/_mintlify/api/og/v2?division=API+keys\u0026amp;title=Update+an+API+key\u0026amp;description=Rename+an+API+key+or+replace+its+IP+allowlist.+**Admin+only.**+You+normally+do+this+in+the+dashboard.%0A%0AWhen+%60allowedIps%60+is+set%2C+requests+that+use+the+key+from+\u0026amp;theme=35ed8de89d541f079451cc52\u0026amp;signature=f35f6e904ab6b43b6dfa86af824592cd3c85d69e342b0c4f1de5b045093dcb51\">\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=\"Update an API key - Hyperprop Platform API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Rename an API key or replace its IP allowlist. Admin only. You normally do this in the dashboard. When allowedIps is set, requests that use the key from any other address are refused with 403 IP_NOT_ALLOWED; the error message includes the address the request came from. [] removes the restriction. The change applies to every request within 30 seconds. Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key\u0026#x27;s scope can\u0026#x27;t be changed; create a new key with the scope you need instead.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://hyperprop-401fc39d.mintlify.app/_mintlify/api/og/v2?division=API+keys\u0026amp;title=Update+an+API+key\u0026amp;description=Rename+an+API+key+or+replace+its+IP+allowlist.+**Admin+only.**+You+normally+do+this+in+the+dashboard.%0A%0AWhen+%60allowedIps%60+is+set%2C+requests+that+use+the+key+from+\u0026amp;theme=35ed8de89d541f079451cc52\u0026amp;signature=f35f6e904ab6b43b6dfa86af824592cd3c85d69e342b0c4f1de5b045093dcb51\">\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=\"/mintlify-assets/_mintlify/favicons/hyperprop-401fc39d/E21rb6hoYD-Zo_QV/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Hyperprop Platform API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#253CFF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/platform-api/api-keys/update-an-api-key.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.hyperprop.com/#organization\",\"name\":\"Hyperprop Platform API\",\"url\":\"https://docs.hyperprop.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/hyperprop-401fc39d/snMIX7SYzcFqAv9j/logo/light.svg?fit=max\u0026auto=format\u0026n=snMIX7SYzcFqAv9j\u0026q=85\u0026s=e3a0a071fb4ba3ae53ef978c23cc38a3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.hyperprop.com#website\",\"name\":\"Hyperprop Platform API\",\"url\":\"https://docs.hyperprop.com\",\"publisher\":{\"@id\":\"https://docs.hyperprop.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key#webpage\",\"url\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key\",\"name\":\"Update an API key\",\"description\":\"Rename an API key or replace its IP allowlist. Admin only. You normally do this in the dashboard. When allowedIps is set, requests that use the key from any other address are refused with 403 IP_NOT_ALLOWED; the error message includes the address the request came from. [] removes the restriction. The change applies to every request within 30 seconds. Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key's scope can't be changed; create a new key with the scope you need instead.\",\"dateModified\":\"2026-10-31T11:23:51.190Z\",\"isPartOf\":{\"@id\":\"https://docs.hyperprop.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Platform API\",\"item\":\"https://docs.hyperprop.com/platform-api/trading-accounts/list-close-all-runs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API keys\",\"item\":\"https://docs.hyperprop.com/platform-api/api-keys/list-api-keys\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update an API key\",\"item\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key#apireference\",\"headline\":\"Update an API key\",\"name\":\"Update an API key\",\"description\":\"Rename an API key or replace its IP allowlist. Admin only. You normally do this in the dashboard. When allowedIps is set, requests that use the key from any other address are refused with 403 IP_NOT_ALLOWED; the error message includes the address the request came from. [] removes the restriction. The change applies to every request within 30 seconds. Check the list before you save: if the address your backend calls from is not in it, the key stops working for that backend. The key's scope can't be changed; create a new key with the scope you need instead.\",\"url\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key\",\"mainEntityOfPage\":{\"@id\":\"https://docs.hyperprop.com/platform-api/api-keys/update-an-api-key#webpage\"},\"dateModified\":\"2026-10-31T11:23:51.190Z\",\"publisher\":{\"@id\":\"https://docs.hyperprop.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.hyperprop.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Hyperprop Platform API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Hyperprop Platform API","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Platform API","pages":[{"group":"Trading accounts","pages":[{"title":"List close-all runs","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/flatten-runs","href":"/platform-api/trading-accounts/list-close-all-runs"},{"title":"Get trading accounts for your organization","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts","href":"/platform-api/trading-accounts/get-trading-accounts-for-your-organization"},{"title":"Create a trading account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts","href":"/platform-api/trading-accounts/create-a-trading-account"},{"title":"Get bulk operation details","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/bulk-operations/{batchId}","href":"/platform-api/trading-accounts/get-bulk-operation-details"},{"title":"Get a close-all run","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/flatten-runs/{runId}","href":"/platform-api/trading-accounts/get-a-close-all-run"},{"title":"Get daily account and trader activity","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/activity","href":"/platform-api/trading-accounts/get-daily-account-and-trader-activity"},{"title":"Bulk-create unlinked accounts with import keys","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/bulk","href":"/platform-api/trading-accounts/bulk-create-unlinked-accounts-with-import-keys"},{"title":"Bulk update trading accounts","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/bulk-update","href":"/platform-api/trading-accounts/bulk-update-trading-accounts"},{"title":"Close all positions across accounts","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/flatten","href":"/platform-api/trading-accounts/close-all-positions-across-accounts"},{"title":"Get open positions and equity for many accounts","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/positions","href":"/platform-api/trading-accounts/get-open-positions-and-equity-for-many-accounts"},{"title":"Create a trading stream token","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/stream-token","href":"/platform-api/trading-accounts/create-a-trading-stream-token"},{"title":"Get a specific trading account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}","href":"/platform-api/trading-accounts/get-a-specific-trading-account"},{"title":"Update a trading account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/trading-accounts/{accountId}","href":"/platform-api/trading-accounts/update-a-trading-account"},{"title":"Get an account's event log and session history","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/activity","href":"/platform-api/trading-accounts/get-an-accounts-event-log-and-session-history"},{"title":"List an account's balance adjustments","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/balance-adjustments","href":"/platform-api/trading-accounts/list-an-accounts-balance-adjustments"},{"title":"Credit or debit a trading account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/balance-adjustments","href":"/platform-api/trading-accounts/credit-or-debit-a-trading-account"},{"title":"Get account change history","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/changes","href":"/platform-api/trading-accounts/get-account-change-history"},{"title":"Get an account's daily P\u0026L","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/daily-pnl","href":"/platform-api/trading-accounts/get-an-accounts-daily-p\u0026l"},{"title":"Turn an account off (pause)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/deactivate","href":"/platform-api/trading-accounts/turn-an-account-off-pause"},{"title":"Get an account's equity and unrealized P\u0026L","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/equity","href":"/platform-api/trading-accounts/get-an-accounts-equity-and-unrealized-p\u0026l"},{"title":"Close all positions on an account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/flatten","href":"/platform-api/trading-accounts/close-all-positions-on-an-account"},{"title":"Get an account's order event timeline","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/order-events","href":"/platform-api/trading-accounts/get-an-accounts-order-event-timeline"},{"title":"Get an account's order history","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/orders","href":"/platform-api/trading-accounts/get-an-accounts-order-history"},{"title":"Get an account's open positions","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/positions","href":"/platform-api/trading-accounts/get-an-accounts-open-positions"},{"title":"Turn an account back on","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/reactivate","href":"/platform-api/trading-accounts/turn-an-account-back-on"},{"title":"Unlink a trader (issues a fresh import key)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/unlink","href":"/platform-api/trading-accounts/unlink-a-trader-issues-a-fresh-import-key"},{"title":"Get a balance adjustment by reference","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-accounts/{accountId}/balance-adjustments/{reference}","href":"/platform-api/trading-accounts/get-a-balance-adjustment-by-reference"},{"title":"Cancel working orders on an account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/orders/cancel","href":"/platform-api/trading-accounts/cancel-working-orders-on-an-account"},{"title":"Close one position on an account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-accounts/{accountId}/positions/{contract}/close","href":"/platform-api/trading-accounts/close-one-position-on-an-account"}]},{"group":"Traders","pages":[{"title":"List trader identity bindings (customer ⇄ Hyperprop login)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trader-bindings","href":"/platform-api/traders/list-trader-identity-bindings-customer-⇄-hyperprop-login"},{"title":"Get traders for your organization","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/traders","href":"/platform-api/traders/get-traders-for-your-organization"},{"title":"Get a specific trader","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/traders/{traderId}","href":"/platform-api/traders/get-a-specific-trader"},{"title":"Update a trader","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/traders/{traderId}","href":"/platform-api/traders/update-a-trader"},{"title":"Rebind a customer to a new Hyperprop login (support flow)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trader-bindings/{bindingId}/rebind","href":"/platform-api/traders/rebind-a-customer-to-a-new-hyperprop-login-support-flow"}]},{"group":"Trading plans","pages":[{"title":"Get trading plans for your organization","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-plans","href":"/platform-api/trading-plans/get-trading-plans-for-your-organization"},{"title":"Create a new trading plan","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-plans","href":"/platform-api/trading-plans/create-a-new-trading-plan"},{"title":"Get a specific trading plan","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-plans/{planId}","href":"/platform-api/trading-plans/get-a-specific-trading-plan"},{"title":"Delete a trading plan","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/trading-plans/{planId}","href":"/platform-api/trading-plans/delete-a-trading-plan"},{"title":"Update a trading plan","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/trading-plans/{planId}","href":"/platform-api/trading-plans/update-a-trading-plan"}]},{"group":"Trading rules","pages":[{"title":"Get trading rules for your organization","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-rules","href":"/platform-api/trading-rules/get-trading-rules-for-your-organization"},{"title":"Create a new trading rule","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/trading-rules","href":"/platform-api/trading-rules/create-a-new-trading-rule"},{"title":"Get a specific trading rule","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/trading-rules/{ruleId}","href":"/platform-api/trading-rules/get-a-specific-trading-rule"},{"title":"Delete a trading rule","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/trading-rules/{ruleId}","href":"/platform-api/trading-rules/delete-a-trading-rule"},{"title":"Update a trading rule","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/trading-rules/{ruleId}","href":"/platform-api/trading-rules/update-a-trading-rule"}]},{"group":"Instruments","pages":[{"title":"List instruments","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/instruments","href":"/platform-api/instruments/list-instruments"}]},{"group":"Lockouts","pages":[{"title":"List all active lockouts","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/lockouts","href":"/platform-api/lockouts/list-all-active-lockouts"},{"title":"Create admin lockout","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/lockouts","href":"/platform-api/lockouts/create-admin-lockout"},{"title":"Get daily lockout activity","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/lockouts/activity","href":"/platform-api/lockouts/get-daily-lockout-activity"},{"title":"Get lockout status for account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/lockouts/{accountId}","href":"/platform-api/lockouts/get-lockout-status-for-account"},{"title":"Remove lockout from account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/lockouts/{accountId}","href":"/platform-api/lockouts/remove-lockout-from-account"},{"title":"Update active lockout","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/lockouts/{accountId}","href":"/platform-api/lockouts/update-active-lockout"}]},{"group":"Payouts","pages":[{"title":"Payout queue — bulk payout eligibility","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/payout-eligibility","href":"/platform-api/payouts/payout-queue-—-bulk-payout-eligibility"},{"title":"Get daily payout activity","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/payouts/activity","href":"/platform-api/payouts/get-daily-payout-activity"},{"title":"Check payout eligibility","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/accounts/{accountId}/payout-eligibility","href":"/platform-api/payouts/check-payout-eligibility"},{"title":"List payouts for an account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/accounts/{accountId}/payouts","href":"/platform-api/payouts/list-payouts-for-an-account"},{"title":"Execute a payout (balance withdrawal)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/accounts/{accountId}/payouts","href":"/platform-api/payouts/execute-a-payout-balance-withdrawal"},{"title":"Reverse a payout (restore the withdrawn balance)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/accounts/{accountId}/payouts/{payoutId}/reverse","href":"/platform-api/payouts/reverse-a-payout-restore-the-withdrawn-balance"}]},{"group":"Purchases","pages":[{"title":"Get purchases for your organization","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/purchases","href":"/platform-api/purchases/get-purchases-for-your-organization"},{"title":"Get a specific purchase","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/purchases/{purchaseId}","href":"/platform-api/purchases/get-a-specific-purchase"}]},{"group":"Time Machine","pages":[{"title":"List revert batches","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/revert-batches","href":"/platform-api/time-machine/list-revert-batches"},{"title":"Get revert settings","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/time-machine-settings","href":"/platform-api/time-machine/get-revert-settings"},{"title":"Update revert settings","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json put /v1/organization/time-machine-settings","href":"/platform-api/time-machine/update-revert-settings"},{"title":"Bulk revert accounts to a trading day or an instant","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/accounts/revert-trading-day","href":"/platform-api/time-machine/bulk-revert-accounts-to-a-trading-day-or-an-instant"},{"title":"Inspect a revert batch","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/revert-batches/{batchId}","href":"/platform-api/time-machine/inspect-a-revert-batch"},{"title":"Revert an account to a trading day or an instant","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/accounts/{accountId}/revert-trading-day","href":"/platform-api/time-machine/revert-an-account-to-a-trading-day-or-an-instant"},{"title":"Cancel a background run","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/revert-batches/{batchId}/cancel","href":"/platform-api/time-machine/cancel-a-background-run"},{"title":"List the accounts of a background run","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/revert-batches/{batchId}/items","href":"/platform-api/time-machine/list-the-accounts-of-a-background-run"},{"title":"Retry the failed accounts of a background run","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/revert-batches/{batchId}/retry-failed","href":"/platform-api/time-machine/retry-the-failed-accounts-of-a-background-run"},{"title":"Undo a revert batch","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/revert-batches/{batchId}/undo","href":"/platform-api/time-machine/undo-a-revert-batch"},{"title":"List the fills a revert voided on an account","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/revert-batches/{batchId}/accounts/{accountId}/voided-fills","href":"/platform-api/time-machine/list-the-fills-a-revert-voided-on-an-account"}]},{"group":"Mass credit","pages":[{"title":"List balance adjustment batches","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/balance-adjustments","href":"/platform-api/mass-credit/list-balance-adjustment-batches"},{"title":"Credit back an incident window's losses","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments","href":"/platform-api/mass-credit/credit-back-an-incident-windows-losses"},{"title":"List bulk jobs","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/jobs","href":"/platform-api/mass-credit/list-bulk-jobs"},{"title":"Preview a balance credit","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/preview","href":"/platform-api/mass-credit/preview-a-balance-credit"},{"title":"Preview a mass credit","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/previews","href":"/platform-api/mass-credit/preview-a-mass-credit"},{"title":"List mass credit templates","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/balance-adjustments/templates","href":"/platform-api/mass-credit/list-mass-credit-templates"},{"title":"Create a mass credit template","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/templates","href":"/platform-api/mass-credit/create-a-mass-credit-template"},{"title":"Get a balance adjustment batch","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/balance-adjustments/{batchId}","href":"/platform-api/mass-credit/get-a-balance-adjustment-batch"},{"title":"Get a bulk job","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/jobs/{jobId}","href":"/platform-api/mass-credit/get-a-bulk-job"},{"title":"Delete a mass credit template","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/balance-adjustments/templates/{templateId}","href":"/platform-api/mass-credit/delete-a-mass-credit-template"},{"title":"Update a mass credit template","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/balance-adjustments/templates/{templateId}","href":"/platform-api/mass-credit/update-a-mass-credit-template"},{"title":"Retry a balance adjustment batch","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/{batchId}/retry","href":"/platform-api/mass-credit/retry-a-balance-adjustment-batch"},{"title":"Reverse a balance credit","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/{batchId}/reverse","href":"/platform-api/mass-credit/reverse-a-balance-credit"},{"title":"Cancel a bulk job","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/jobs/{jobId}/cancel","href":"/platform-api/mass-credit/cancel-a-bulk-job"},{"title":"Export a bulk job's items as CSV","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/jobs/{jobId}/export","href":"/platform-api/mass-credit/export-a-bulk-jobs-items-as-csv"},{"title":"List a bulk job's items","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/jobs/{jobId}/items","href":"/platform-api/mass-credit/list-a-bulk-jobs-items"},{"title":"Pause a bulk job","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/jobs/{jobId}/pause","href":"/platform-api/mass-credit/pause-a-bulk-job"},{"title":"Resume a bulk job","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/jobs/{jobId}/resume","href":"/platform-api/mass-credit/resume-a-bulk-job"},{"title":"Retry a bulk job's failed items","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/jobs/{jobId}/retry","href":"/platform-api/mass-credit/retry-a-bulk-jobs-failed-items"},{"title":"Reverse a mass credit","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/jobs/{jobId}/reverse","href":"/platform-api/mass-credit/reverse-a-mass-credit"},{"title":"Confirm a mass credit","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/previews/{jobId}/confirm","href":"/platform-api/mass-credit/confirm-a-mass-credit"},{"title":"Add accounts to a draft preview","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/previews/{jobId}/inputs","href":"/platform-api/mass-credit/add-accounts-to-a-draft-preview"},{"title":"Start a draft preview","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/balance-adjustments/previews/{jobId}/start","href":"/platform-api/mass-credit/start-a-draft-preview"}]},{"group":"Webhooks","pages":[{"title":"View webhook delivery history","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/webhook-deliveries","href":"/platform-api/webhooks/view-webhook-delivery-history"},{"title":"List all webhooks","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/webhooks","href":"/platform-api/webhooks/list-all-webhooks"},{"title":"Register a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/webhooks","href":"/platform-api/webhooks/register-a-webhook-endpoint"},{"title":"Get daily webhook delivery activity","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/webhook-deliveries/activity","href":"/platform-api/webhooks/get-daily-webhook-delivery-activity"},{"title":"Inspect a webhook event and all delivery attempts","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/webhook-deliveries/{deliveryId}","href":"/platform-api/webhooks/inspect-a-webhook-event-and-all-delivery-attempts"},{"title":"Get webhook details","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/webhooks/{webhookId}","href":"/platform-api/webhooks/get-webhook-details"},{"title":"Update a webhook","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json put /v1/organization/webhooks/{webhookId}","href":"/platform-api/webhooks/update-a-webhook"},{"title":"Delete a webhook","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/webhooks/{webhookId}","href":"/platform-api/webhooks/delete-a-webhook"},{"title":"Redeliver a webhook delivery","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/webhook-deliveries/{deliveryId}/redeliver","href":"/platform-api/webhooks/redeliver-a-webhook-delivery"},{"title":"Get webhook endpoint delivery and latency metrics","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/webhooks/{webhookId}/metrics","href":"/platform-api/webhooks/get-webhook-endpoint-delivery-and-latency-metrics"},{"title":"Rotate signing secret","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/webhooks/{webhookId}/rotate-secret","href":"/platform-api/webhooks/rotate-signing-secret"},{"title":"Simulate any event type (QA fixture)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/webhooks/{webhookId}/simulate","href":"/platform-api/webhooks/simulate-any-event-type-qa-fixture"},{"title":"Send a test event","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/webhooks/{webhookId}/test","href":"/platform-api/webhooks/send-a-test-event"}]},{"group":"Events","pages":[{"title":"List all organization events","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/events","href":"/platform-api/events/list-all-organization-events"},{"title":"Real-time event stream (WebSocket)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/events/stream","href":"/platform-api/events/real-time-event-stream-websocket"},{"title":"Inspect one event and all its webhook deliveries","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/events/{eventId}","href":"/platform-api/events/inspect-one-event-and-all-its-webhook-deliveries"}]},{"group":"Reconciliation","pages":[{"title":"Get account balances (bulk, reconciliation-friendly)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/balances","href":"/platform-api/reconciliation/get-account-balances-bulk-reconciliation-friendly"},{"title":"Reconcile a trading day in one call","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/reconciliation","href":"/platform-api/reconciliation/reconcile-a-trading-day-in-one-call"},{"title":"Get end-of-day account snapshots","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/snapshots/accounts","href":"/platform-api/reconciliation/get-end-of-day-account-snapshots"},{"title":"Get fills for a trading day","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/snapshots/fills","href":"/platform-api/reconciliation/get-fills-for-a-trading-day"}]},{"group":"Analytics","pages":[{"title":"Get organization analytics","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/analytics","href":"/platform-api/analytics/get-organization-analytics"},{"title":"Get hourly activity by weekday","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/analytics/hourly","href":"/platform-api/analytics/get-hourly-activity-by-weekday"},{"title":"Get revenue breakdown","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/analytics/revenue","href":"/platform-api/analytics/get-revenue-breakdown"},{"title":"Get top traders over time","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/analytics/top-traders","href":"/platform-api/analytics/get-top-traders-over-time"},{"title":"Get per-plan unit economics and sustainability flags","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/risk/plan-economics","href":"/platform-api/analytics/get-per-plan-unit-economics-and-sustainability-flags"},{"title":"Get monthly firm P\u0026L (revenue vs payouts vs platform costs)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/risk/pnl","href":"/platform-api/analytics/get-monthly-firm-p\u0026l-revenue-vs-payouts-vs-platform-costs"}]},{"group":"Billing","pages":[{"title":"Get daily billing activity","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/activity","href":"/platform-api/billing/get-daily-billing-activity"},{"title":"List billing cycles","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/cycles","href":"/platform-api/billing/list-billing-cycles"},{"title":"List all billing events","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/events","href":"/platform-api/billing/list-all-billing-events"},{"title":"Project next month's bill from the current state","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/forecast","href":"/platform-api/billing/project-next-months-bill-from-the-current-state"},{"title":"Get all-months billing aggregates","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/monthly","href":"/platform-api/billing/get-all-months-billing-aggregates"},{"title":"Get monthly billing summary","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/summary","href":"/platform-api/billing/get-monthly-billing-summary"},{"title":"Get events for a billing cycle","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/billing/cycles/{cycleId}/events","href":"/platform-api/billing/get-events-for-a-billing-cycle"}]},{"group":"Team and roles","pages":[{"title":"List roles (system presets + your custom roles)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/roles","href":"/platform-api/team-and-roles/list-roles-system-presets-+-your-custom-roles"},{"title":"Create a custom role","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/roles","href":"/platform-api/team-and-roles/create-a-custom-role"},{"title":"Get team members for your organization","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/team","href":"/platform-api/team-and-roles/get-team-members-for-your-organization"},{"title":"Add a team member with a role","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/team","href":"/platform-api/team-and-roles/add-a-team-member-with-a-role"},{"title":"Delete an unused custom role","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/roles/{roleId}","href":"/platform-api/team-and-roles/delete-an-unused-custom-role"},{"title":"Update a custom role","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/roles/{roleId}","href":"/platform-api/team-and-roles/update-a-custom-role"},{"title":"Remove a team member","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/team/{memberId}","href":"/platform-api/team-and-roles/remove-a-team-member"},{"title":"Change a team member's role","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/team/{memberId}","href":"/platform-api/team-and-roles/change-a-team-members-role"},{"title":"Generate a new temporary password for a team member","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/team/{memberId}/reset-password","href":"/platform-api/team-and-roles/generate-a-new-temporary-password-for-a-team-member"}]},{"group":"API keys","pages":[{"title":"List API keys","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/api-keys","href":"/platform-api/api-keys/list-api-keys"},{"title":"Create an API key","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/api-keys","href":"/platform-api/api-keys/create-an-api-key"},{"title":"Delete an API key","description":"Permanently delete an API key. **Admin only.**\n\nThe key stops authenticating within **30 seconds** — after that any backend still sending it gets `401 Invalid API key`. Check `lastUsedAt` on the list endpoint first if you are not sure whether the key is still in use (it is updated at most once a minute).\n\nDeleting is the last step of a rotation: create the new key first (up to 2 can be active at once), switch your backend over, then delete the old one.","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/api-keys/{keyId}","href":"/platform-api/api-keys/delete-an-api-key"},{"title":"Update an API key","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json patch /v1/organization/api-keys/{keyId}","href":"/platform-api/api-keys/update-an-api-key"}]},{"group":"Logs and health","pages":[{"title":"List API request logs","description":"Stripe-style request log of every authenticated call your organization made to\nthe Platform API (both `X-API-Key` and dashboard-session requests), newest\nfirst.\n\nEach entry includes the HTTP method, path, status code, machine-readable error\ncode, latency, caller identity (API key vs dashboard session), source IP, user\nagent, query parameters, and the response body (capped at 2 KiB).\n\n**Filters:**\n- `method` — GET, POST, PUT, PATCH, DELETE\n- `status` — `succeeded` (2xx/3xx), `failed` (4xx+5xx), `4xx`, `5xx`\n- `path` — substring match, e.g. `payouts`\n\n**Example:**\n```http\nGET /platform/v1/organization/api-logs?status=failed\u0026limit=25\nX-API-Key: hp_live_...\n```\n\nLogging starts from the deployment of this feature; earlier traffic is not\nbackfilled. Requests to the log/health endpoints themselves and the WebSocket\nstream are not logged.\n\n**Pagination:** `pagination.total` counts matching items up to 10,000 (or up\nto the end of the requested page, if that is further). When more match,\n`total` is that limit and `pagination.totalCapped` is `true` — show it as\n\"10,000+\". `hasMore` stays accurate either way; page with `offset` until it\nis `false`.\n\n**Permissions:** requires **view** access to \"Webhooks\".\n\n**Authentication:** send your organization API key in the `X-API-Key` header.","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/api-logs","href":"/platform-api/logs-and-health/list-api-request-logs"},{"title":"Get organization audit log","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/audit-log","href":"/platform-api/logs-and-health/get-organization-audit-log"},{"title":"Get integration health (alerts, errors, insights)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/health","href":"/platform-api/logs-and-health/get-integration-health-alerts-errors-insights"},{"title":"Look up an idempotency key","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/idempotency-keys","href":"/platform-api/logs-and-health/look-up-an-idempotency-key"},{"title":"Release a stuck idempotency key","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/idempotency-keys/release","href":"/platform-api/logs-and-health/release-a-stuck-idempotency-key"}]},{"group":"Organization profile","pages":[{"title":"Get your organization profile","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/profile","href":"/platform-api/organization-profile/get-your-organization-profile"},{"title":"Update your organization profile","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json put /v1/organization/profile","href":"/platform-api/organization-profile/update-your-organization-profile"},{"title":"Upload organization logo","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/profile/logo","href":"/platform-api/organization-profile/upload-organization-logo"},{"title":"Delete organization logo","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json delete /v1/organization/profile/logo","href":"/platform-api/organization-profile/delete-organization-logo"}]},{"group":"Support","pages":[{"title":"List your support tickets","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/support/tickets","href":"/platform-api/support/list-your-support-tickets"},{"title":"Create a support ticket","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/support/tickets","href":"/platform-api/support/create-a-support-ticket"},{"title":"Get signed upload URLs for ticket attachments","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/support/uploads","href":"/platform-api/support/get-signed-upload-urls-for-ticket-attachments"},{"title":"Get a support ticket with its reply thread","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/organization/support/tickets/{ticketId}","href":"/platform-api/support/get-a-support-ticket-with-its-reply-thread"},{"title":"Reply on a support ticket","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json post /v1/organization/support/tickets/{ticketId}/comments","href":"/platform-api/support/reply-on-a-support-ticket"}]},{"group":"Partner access","pages":[{"title":"Get order history (keyset-paginated)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/user/trading/orders","href":"/platform-api/partner-access/get-order-history-keyset-paginated"},{"title":"Get completed round-trip trades (server-derived)","deprecated":null,"version":null,"openapi":"https://api.hyperprop.com/platform/openapi.json get /v1/user/trading/trades","href":"/platform-api/partner-access/get-completed-round-trip-trades-server-derived"}]}]},{"group":"Trade API","pages":[{"group":"Account","pages":[{"title":"Get current trading account with equity and P\u0026L","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/account","href":"/trade-api/account/get-current-trading-account-with-equity-and-p\u0026l"},{"title":"Get account lockout status","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/account/lockout","href":"/trade-api/account/get-account-lockout-status"},{"title":"Create or update account lockout","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/account/lockout","href":"/trade-api/account/create-or-update-account-lockout"},{"title":"Remove account lockout","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json delete /trade/account/lockout","href":"/trade-api/account/remove-account-lockout"},{"title":"Set or clear a trading account's display nickname.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/account/nickname","href":"/trade-api/account/set-or-clear-a-trading-accounts-display-nickname"},{"title":"Get all trading accounts for the authenticated user","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/accounts","href":"/trade-api/account/get-all-trading-accounts-for-the-authenticated-user"},{"title":"List the trader's API keys","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/partner/keys","href":"/trade-api/account/list-the-traders-api-keys"},{"title":"Generate a trader API key for third-party access","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/partner/keys","href":"/trade-api/account/generate-a-trader-api-key-for-third-party-access"},{"title":"Revoke one of the trader's API keys","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json delete /trade/partner/keys/{key_id}","href":"/trade-api/account/revoke-one-of-the-traders-api-keys"},{"title":"Create a partner session","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/partner/session","href":"/trade-api/account/create-a-partner-session"}]},{"group":"Risk","pages":[{"title":"Read the trader's personal risk settings for an account.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/account/risk-settings","href":"/trade-api/risk/read-the-traders-personal-risk-settings-for-an-account"},{"title":"Update personal risk settings.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/account/risk-settings","href":"/trade-api/risk/update-personal-risk-settings"}]},{"group":"Accounts","pages":[{"title":"Consistency status for one of the caller's accounts","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/accounts/{account_id}/consistency","href":"/trade-api/accounts/consistency-status-for-one-of-the-callers-accounts"}]},{"group":"Positions","pages":[{"title":"Close all open positions for an account","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/close-all","href":"/trade-api/positions/close-all-open-positions-for-an-account"},{"title":"Flatten account: close positions and cancel orders","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/flatten","href":"/trade-api/positions/flatten-account:-close-positions-and-cancel-orders"},{"title":"Add margin to an isolated perpetual position, or remove some.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/perp/isolated-margin","href":"/trade-api/positions/add-margin-to-an-isolated-perpetual-position-or-remove-some"},{"title":"Read the account's perpetual margin settings and position margins.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/perp/margin","href":"/trade-api/positions/read-the-accounts-perpetual-margin-settings-and-position-margins"},{"title":"Set a perpetual's margin mode and/or leverage.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/perp/margin","href":"/trade-api/positions/set-a-perpetuals-margin-mode-andor-leverage"},{"title":"Close a specific position by contract","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/position/close","href":"/trade-api/positions/close-a-specific-position-by-contract"},{"title":"Reverse a position (close + open opposite side)","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/position/reverse","href":"/trade-api/positions/reverse-a-position-close-+-open-opposite-side"},{"title":"Set TP/SL at the position level for one (account, contract) pair.","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/position/set-bracket","href":"/trade-api/positions/set-tpsl-at-the-position-level-for-one-account-contract-pair"},{"title":"Get open positions with real-time P\u0026L","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/positions","href":"/trade-api/positions/get-open-positions-with-real-time-p\u0026l"}]},{"group":"Orders","pages":[{"title":"Get command processing status by id","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/commands/{command_id}","href":"/trade-api/orders/get-command-processing-status-by-id"},{"title":"Submit a market, limit, or stop order","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/order","href":"/trade-api/orders/submit-a-market-limit-or-stop-order"},{"title":"Attach TP/SL bracket to an existing order","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/order/attach-bracket","href":"/trade-api/orders/attach-tpsl-bracket-to-an-existing-order"},{"title":"Cancel a pending order","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/order/cancel","href":"/trade-api/orders/cancel-a-pending-order"},{"title":"Detach TP/SL bracket leg from an order","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/order/detach-bracket","href":"/trade-api/orders/detach-tpsl-bracket-leg-from-an-order"},{"title":"Link a standalone order into the position's OCO group","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/order/link-oco","href":"/trade-api/orders/link-a-standalone-order-into-the-positions-oco-group"},{"title":"Modify price or quantity of a pending order","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/order/modify","href":"/trade-api/orders/modify-price-or-quantity-of-a-pending-order"},{"title":"Get all orders (filled, pending, cancelled)","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/orders","href":"/trade-api/orders/get-all-orders-filled-pending-cancelled"},{"title":"Cancel all pending orders for an account (keeps live position protection)","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/orders/cancel-all","href":"/trade-api/orders/cancel-all-pending-orders-for-an-account-keeps-live-position-protection"},{"title":"Get order history (append-only lifecycle events)","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/orders/history","href":"/trade-api/orders/get-order-history-append-only-lifecycle-events"},{"title":"Get active working orders","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/orders/pending","href":"/trade-api/orders/get-active-working-orders"},{"title":"Get trade execution history","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/trades","href":"/trade-api/orders/get-trade-execution-history"}]},{"group":"Copy Trading","pages":[{"title":"Get copy trading configuration","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/copy/config","href":"/trade-api/copy-trading/get-copy-trading-configuration"},{"title":"Create or update a copy trading config","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/copy/config","href":"/trade-api/copy-trading/create-or-update-a-copy-trading-config"},{"title":"Delete a copy trading config","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json delete /trade/copy/config","href":"/trade-api/copy-trading/delete-a-copy-trading-config"},{"title":"Toggle copy config active state","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/copy/config/active","href":"/trade-api/copy-trading/toggle-copy-config-active-state"},{"title":"Delete all copy trading configs","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json delete /trade/copy/config/all","href":"/trade-api/copy-trading/delete-all-copy-trading-configs"},{"title":"Bulk update copy trading group followers","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json post /trade/copy/group","href":"/trade-api/copy-trading/bulk-update-copy-trading-group-followers"},{"title":"Get copy trading status and positions","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/copy/status","href":"/trade-api/copy-trading/get-copy-trading-status-and-positions"}]},{"group":"WebSocket","pages":[{"title":"Real-time WebSocket for trading events","deprecated":null,"version":null,"openapi":"/api-reference/trade-openapi.json get /trade/ws","href":"/trade-api/websocket/real-time-websocket-for-trading-events"}]}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Update an API key - Hyperprop Platform API","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-B7XKH4J3.js","utils-lOYzL7z-.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DF6jUUIM.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dpsj5f7C.js","snippetPresets-CYeiDe8v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-DSVu9Ucl.js","ApiExamples-CUFz1YZ_.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D8H_iLS4.js","shallow-DdluZBHX.js","getApiPlaygroundDisplay-B9922vev.js","CodeSnippet-CMoRNGYs.js","CodeSnippets-DwyrPHuw.js","getPastedJson-G-zIvlHh.js","icon-B03fnEy0.js","MethodPill-CW7teklc.js","DuplicateIcon-CtO8eekd.js","createIcon-DZTKdM_A.js","DynamicMarkdown-D5M2At0B.js","SectionHeading-C_2NaA2U.js","axios-vUo_bRtp.js","Markdown-D7QRHV3m.js","clsx-D1Z-ELXV.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-lvhuD9Du.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CKfC4ywL.js"]}