Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven’t moved since the decision. Required scope: stage:advance. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.
The Venue key (trdrs_vk_sandbox_… or trdrs_vk_production_…), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the /api/venues/{venueId} routes and, with trader:read or trader:trade, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in x-trdrs-trader. A trdrs_sk_… key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.
The successor account. reserved means it was named and created but its opening balance isn't confirmed yet; advanced means it is. They stay distinct because a successor may one day be created at a provider, where asking for an account and having one are different facts.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"trdrs Engine API","description":"Market data, trading and venue infrastructure: programmatic trading and business integrations through one documented API.","colors":{"primary":"#0a0a0a","light":"#fafafa","dark":"#0a0a0a"},"logo":{"light":"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50","dark":"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50"},"favicon":"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50","api":{"playground":{"display":"simple"}},"appearance":{"default":"dark","strict":false},"background":{"color":{"light":"#ffffff","dark":"#0f0f0f"}},"navbar":{"links":[{"href":"https://trdrs.co/developers","label":"Developers"},{"href":"https://sandbox.trdrs.co/settings/api","label":"Sandbox"}],"primary":{"type":"button","label":"Get started","href":"/build"}},"fonts":{"family":"Inter"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"trdrs","hasAudioNarration":false,"actualSubdomain":"trdrs","customDomains":["docs.trdrs.co"],"gitSource":{"type":"github","owner":"trdrsco","repo":"trdrs-engine","deployBranch":"main","contentDirectory":"packages/developer-docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6adec344531268f76f8b6d66","collectionId":"2db9c8d8-38fd-48da-8905-eb1da164d506","liveDeploymentHistoryId":"6adec344531268f76f8b6d66","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6adec344531268f76f8b6d66","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API reference","count":163},{"language":"default","tag":"Endpoints","count":162},{"language":"default","tag":"Venues","count":117},{"language":"default","tag":"Guides","count":47},{"language":"default","tag":"Trading","count":46},{"language":"default","tag":"Connect","count":21},{"language":"default","tag":"Get started","count":20},{"language":"default","tag":"Venue accounts","count":20},{"language":"default","tag":"Market data","count":18},{"language":"default","tag":"Orders","count":18}]},"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":"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":"html{font-size:90%}"}],"page":{"pagePath":"api-reference/venue-platform-preview/advance-an-account-past-a-stage","slug":"/api-reference/venue-platform-preview/advance-an-account-past-a-stage","pageMetadata":{"title":"Advance an account past a stage","description":"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven't moved since the decision. Required scope: `stage:advance`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance","href":"/api-reference/venue-platform-preview/advance-an-account-past-a-stage","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven’t moved since the decision. Required scope: \", _jsx(_components.code, {\n children: \"stage:advance\"\n }), \". Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\"]\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":"Advance an account past a stage","description":"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven't moved since the decision. Required scope: `stage:advance`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance","href":"/api-reference/venue-platform-preview/advance-an-account-past-a-stage","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Venue platform preview"],"security":["51d36eb9-6319-47bd-80be-d9702fbfee13"],"summary":"Advance an account past a stage","description":"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven't moved since the decision. Required scope: `stage:advance`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","parameters":["18bd3a0a-f405-44bd-a6ad-41d1971c79da","e810759e-f787-494e-9006-621d2dc5a297","2f58c737-ef6f-42b4-8ec1-93e419ee7dd3","ae48b495-c38a-4b65-9163-d2e5ebc29e56"],"requestBody":"526e3bb9-938a-46fc-a38c-774cc1ffd3d4","responses":{"200":"a8b62601-4d25-48ce-a29c-f2868efe47ef","400":"4bbee5b2-86dc-473d-a95a-706833a425c9","401":"2ead7538-95f2-4e6e-a8a7-4709e0b5b5a6","402":"948bab5a-c8c1-4999-b4a3-dafd1b759847","403":"69057462-29d8-44f8-b97f-c38d1c86f1cf","404":"20e5e168-4576-45b0-8f59-710e3df44f3b","409":"8513e006-2ee5-4c95-9ad7-ae4e184f9f3a","413":"99b4bcab-9d39-4ce8-a68b-eaea2db8fa79","415":"ece6aa9e-d381-408d-85f5-4befcaadaf6f","503":"5a5b8710-bd68-4086-95e2-e76c9c38215c"},"x-codeSamples":[{"lang":"javascript","label":"TypeScript","source":"const res = await fetch('https://app.trdrs.co/api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance', {\n method: 'POST',\n headers: {\n 'content-type': 'application/json',\n Authorization: `Bearer ${process.env.TRDRS_VENUE_KEY}`,\n \"Idempotency-Key\": \"example-request-1\",\n },\n body: JSON.stringify({\n \"startingAllocation\": {\n \"numerator\": \"10000000\",\n \"denominator\": \"100\"\n }\n }),\n})\nconst data = await res.json()"},{"lang":"shell","label":"cURL","source":"curl -X POST 'https://app.trdrs.co/api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance' \\\n -H \"Authorization: Bearer $TRDRS_VENUE_KEY\" \\\n -H 'Idempotency-Key: example-request-1' \\\n -H 'content-type: application/json' \\\n -d '{\"startingAllocation\":{\"numerator\":\"10000000\",\"denominator\":\"100\"}}'"}],"method":"post","type":"path","servers":["deea1f89-6e7f-4694-a35b-0824c194126c","3a3d6625-9250-40d2-9464-92c2f83e4ef6"],"path":"/api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance","baseUrlOptions":["https://app.trdrs.co","/"],"title":"Advance an account past a stage","codeSamples":[{"label":"TypeScript","lang":"javascript","source":"const res = await fetch('https://app.trdrs.co/api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance', {\n method: 'POST',\n headers: {\n 'content-type': 'application/json',\n Authorization: `Bearer ${process.env.TRDRS_VENUE_KEY}`,\n \"Idempotency-Key\": \"example-request-1\",\n },\n body: JSON.stringify({\n \"startingAllocation\": {\n \"numerator\": \"10000000\",\n \"denominator\": \"100\"\n }\n }),\n})\nconst data = await res.json()"},{"label":"cURL","lang":"shell","source":"curl -X POST 'https://app.trdrs.co/api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance' \\\n -H \"Authorization: Bearer $TRDRS_VENUE_KEY\" \\\n -H 'Idempotency-Key: example-request-1' \\\n -H 'content-type: application/json' \\\n -d '{\"startingAllocation\":{\"numerator\":\"10000000\",\"denominator\":\"100\"}}'"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"18bd3a0a-f405-44bd-a6ad-41d1971c79da":{"name":"venueId","in":"path","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}},"e810759e-f787-494e-9006-621d2dc5a297":{"name":"accountId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"2f58c737-ef6f-42b4-8ec1-93e419ee7dd3":{"name":"stageId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"description":"The stage the account passed, 1 to 80 letters, digits, hyphens or underscores.","uniqueKey":"","typeLabel":"string"},"description":"The stage the account passed, 1 to 80 letters, digits, hyphens or underscores."},"ae48b495-c38a-4b65-9163-d2e5ebc29e56":{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"description":"A key you choose, 1 to 128 characters, that identifies this write. Send the same key when you retry it, so the write is never applied twice.","uniqueKey":"","typeLabel":"string"},"description":"A key you choose, 1 to 128 characters, that identifies this write. Send the same key when you retry it, so the write is never applied twice."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"startingAllocation":{"oneOf":[{"type":"object","description":"The successor's opening balance as an exact fraction. It is required, and null is a real value meaning a successor with a zero balance.","required":["numerator","denominator"],"properties":{"numerator":{"type":"string","isRequired":true,"uniqueKey":"startingAllocation.oneOf.0.numerator","typeLabel":"string"},"denominator":{"type":"string","isRequired":true,"uniqueKey":"startingAllocation.oneOf.0.denominator","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"startingAllocation.oneOf.0","typeLabel":"object"},{"type":"null","description":"The successor's opening balance as an exact fraction. It is required, and null is a real value meaning a successor with a zero balance.","isRequired":true,"uniqueKey":"startingAllocation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"startingAllocation","typeLabel":"object | null"}},"required":["startingAllocation"],"example":{"startingAllocation":{"numerator":"10000000","denominator":"100"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"startingAllocation":{"numerator":"10000000","denominator":"100"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"a8b62601-4d25-48ce-a29c-f2868efe47ef":{"description":"Success. The response is sent with `Cache-Control: no-store`, so don't cache it.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"advance":{"type":"object","additionalProperties":false,"properties":{"state":{"type":"string","enum":["advanced","reserved"],"isRequired":true,"uniqueKey":"advance.state","typeLabel":"enum\u003cstring>"},"targetAccountId":{"type":"string","isRequired":true,"uniqueKey":"advance.targetAccountId","typeLabel":"string"},"cycleId":{"type":"string","isRequired":true,"uniqueKey":"advance.cycleId","typeLabel":"string"},"stageId":{"type":"string","isRequired":true,"uniqueKey":"advance.stageId","typeLabel":"string"},"policyId":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"advance.policyId","typeLabel":"string\u003cuuid>"},"transitionReference":{"type":"string","isRequired":true,"uniqueKey":"advance.transitionReference","typeLabel":"string"}},"required":["state","targetAccountId","cycleId","stageId","policyId","transitionReference"],"description":"The successor account. `reserved` means it was named and created but its opening balance isn't confirmed yet; `advanced` means it is. They stay distinct because a successor may one day be created at a provider, where asking for an account and having one are different facts.","isRequired":true,"uniqueKey":"advance","typeLabel":"object"}},"required":["advance"],"example":{"advance":{"state":"advanced","targetAccountId":"funded-account-1","cycleId":"cycle:2026-09-14T12:00:00.000Z","stageId":"evaluation-1","policyId":"00000000-0000-0000-0000-000000000001","transitionReference":"stage-9f1c2b7e4a5d80361c2b7e4a5d803612"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"advance":{"state":"advanced","targetAccountId":"funded-account-1","cycleId":"cycle:2026-09-14T12:00:00.000Z","stageId":"evaluation-1","policyId":"00000000-0000-0000-0000-000000000001","transitionReference":"stage-9f1c2b7e4a5d80361c2b7e4a5d803612"}}}},"exampleType":"generated"}},"exampleType":"generated"},"4bbee5b2-86dc-473d-a95a-706833a425c9":{"description":"The request is malformed: invalid JSON or input, a bad cursor, or a missing `Idempotency-Key` or `If-Match` header. When one value is refused, `field` names it where the check can say which.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"2ead7538-95f2-4e6e-a8a7-4709e0b5b5a6":{"description":"The Venue key or the session is missing, malformed, revoked or expired.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"948bab5a-c8c1-4999-b4a3-dafd1b759847":{"description":"`billing_paused`: in production, the billing pause of your venue, or of another venue your organization runs, is in force, and `billing` says where to pay. The successor doesn't open, and the advance stays reserved: send it again once your billing admits it, and the successor opens.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"error":{"const":"billing_paused","isRequired":true,"uniqueKey":"error","typeLabel":"any"},"billing":{"type":"object","additionalProperties":false,"properties":{"line":{"type":"string","enum":["connect","venue"],"isRequired":true,"uniqueKey":"billing.line","typeLabel":"enum\u003cstring>"},"target":{"type":"string","isRequired":true,"uniqueKey":"billing.target","typeLabel":"string"},"state":{"const":"paused","isRequired":true,"uniqueKey":"billing.state","typeLabel":"any"},"pastDueSince":{"oneOf":[{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"billing.pastDueSince.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","isRequired":true,"uniqueKey":"billing.pastDueSince.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billing.pastDueSince","typeLabel":"string\u003cdate-time> | null"},"pausedAt":{"oneOf":[{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"billing.pausedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","isRequired":true,"uniqueKey":"billing.pausedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billing.pausedAt","typeLabel":"string\u003cdate-time> | null"},"heldUntil":{"oneOf":[{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"billing.heldUntil.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","isRequired":true,"uniqueKey":"billing.heldUntil.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billing.heldUntil","typeLabel":"string\u003cdate-time> | null"},"payUrl":{"oneOf":[{"type":"string","description":"Where you pay the oldest past-due invoice.","isRequired":true,"uniqueKey":"billing.payUrl.oneOf.0","typeLabel":"string"},{"type":"null","description":"Where you pay the oldest past-due invoice.","isRequired":true,"uniqueKey":"billing.payUrl.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billing.payUrl","typeLabel":"string | null"},"billingUrl":{"oneOf":[{"type":"string","description":"Your billing page, where you replace your card and charge it again.","isRequired":true,"uniqueKey":"billing.billingUrl.oneOf.0","typeLabel":"string"},{"type":"null","description":"Your billing page, where you replace your card and charge it again.","isRequired":true,"uniqueKey":"billing.billingUrl.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billing.billingUrl","typeLabel":"string | null"}},"required":["line","target","state","pastDueSince","pausedAt","heldUntil","payUrl","billingUrl"],"description":"The standing a `billing_paused` refusal carries: since when the business has been past due and paused, and where it pays.","isRequired":true,"uniqueKey":"billing","typeLabel":"object"}},"required":["error","billing"],"description":"The answer to a request the billing pause refuses. Pay every past-due invoice and the request is served again, within minutes of the payment.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"billing_paused","billing":{"line":"connect","target":"\u003cstring>","state":"paused","pastDueSince":"2023-11-07T05:31:56Z","pausedAt":"2023-11-07T05:31:56Z","heldUntil":"2023-11-07T05:31:56Z","payUrl":"\u003cstring>","billingUrl":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"69057462-29d8-44f8-b97f-c38d1c86f1cf":{"description":"The credential is valid but can't do this: the key lacks the scope or its creator is no longer an owner, the email isn't verified, a reader tried to write, or the request came from an origin that isn't trusted.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"20e5e168-4576-45b0-8f59-710e3df44f3b":{"description":"The venue, account or resource doesn't exist in this environment, or isn't yours to see.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"8513e006-2ee5-4c95-9ad7-ae4e184f9f3a":{"description":"`not_eligible` lists every failing reason in `reasons`, including `successor_policy_unresolved` when the account is held to no risk policy, so there is none to hold its successor to. `version_conflict`: the account moved since its facts were measured. `stage_decision_pending`: the risk decisions are still catching up, which clears by itself, so retry. `billing_setup_required`: in production, your venue hasn't accepted the current Venue terms or saved a card, and `missing` names what's left: `terms`, `card` or both. The successor doesn't open, and the advance stays reserved: send it again once your billing admits it, and the successor opens.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"99b4bcab-9d39-4ce8-a68b-eaea2db8fa79":{"description":"The body is larger than this route accepts.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"ece6aa9e-d381-408d-85f5-4befcaadaf6f":{"description":"Send the body as JSON, with `Content-Type: application/json`.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"5a5b8710-bd68-4086-95e2-e76c9c38215c":{"description":"`billing_unavailable`: in production, the Venue line doesn't collect in this deployment, and `line` names it. The successor doesn't open, and the advance stays reserved: send it again once your billing admits it, and the successor opens. Any other `503` means trdrs can't complete the advance right now: send it again. `engine_draining` with a `Retry-After` header: the engine you reached is restarting for a release and did nothing. Wait for `Retry-After`, then send the same request again, with the same `clientOrderId` or `Idempotency-Key` where the route takes one: another engine takes it. A write refused before any route takes it says `server draining` as its `error`.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"headers":{"Retry-After":{"description":"How many seconds to wait before sending the same request again. A `503` carries it only when the engine did nothing, so the request may be sent again as it is.","schema":{"type":"integer","minimum":1}}},"exampleType":"generated"}},"security":{"51d36eb9-6319-47bd-80be-d9702fbfee13":{"venueKey":{"type":"http","scheme":"bearer","description":"The Venue key (`trdrs_vk_sandbox_…` or `trdrs_vk_production_…`), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the `/api/venues/{venueId}` routes and, with `trader:read` or `trader:trade`, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in `x-trdrs-trader`. A `trdrs_sk_…` key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.","scopes":[],"schemeName":"venueKey"}}},"servers":{"deea1f89-6e7f-4694-a35b-0824c194126c":{"url":"https://app.trdrs.co","description":"Production"},"3a3d6625-9250-40d2-9464-92c2f83e4ef6":{"url":"/","description":"This engine"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"The Venue key (`trdrs_vk_sandbox_…` or `trdrs_vk_production_…`), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the `/api/venues/{venueId}` routes and, with `trader:read` or `trader:trade`, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in `x-trdrs-trader`. A `trdrs_sk_…` key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.","scopes":[],"schemeName":"venueKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"The Venue key (`trdrs_vk_sandbox_…` or `trdrs_vk_production_…`), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the `/api/venues/{venueId}` routes and, with `trader:read` or `trader:trade`, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in `x-trdrs-trader`. A `trdrs_sk_…` key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"venueKey","name":"Authorization"}],"title":"venueKey"}]},"originalFileLocation":"api/openapi.json"},"subdomain":"trdrs","siteName":"trdrs Engine API","title":"Advance an account past a stage - trdrs Engine API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-23T22:24:27.552Z","originalFileLocation":"api-reference/venue-platform-preview/advance-an-account-past-a-stage.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=\"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven\u0026#x27;t moved since the decision. Required scope: stage:advance. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\">\u003cmeta data-mint-head name=\"application-name\" content=\"trdrs Engine 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/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_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/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Advance an account past a stage - trdrs Engine API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven\u0026#x27;t moved since the decision. Required scope: stage:advance. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"trdrs Engine API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://trdrs.mintlify.app/_mintlify/api/og/v2?division=Stages\u0026amp;title=Advance+an+account+past+a+stage\u0026amp;description=Advances+an+account+that+passed+a+stage%3A+eligibility+is+decided+again%2C+then+one+successor+account+is+issued+on+the+paper+book+in+the+group+the+stage+names+as+ne\u0026amp;theme=85063b664f29463f86ec0c0f\u0026amp;signature=39f336a85b7d59a39559e3fc1db8e9db2697d49feb28a301cb55672efa51be88\">\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=\"Advance an account past a stage - trdrs Engine API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven\u0026#x27;t moved since the decision. Required scope: stage:advance. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://trdrs.mintlify.app/_mintlify/api/og/v2?division=Stages\u0026amp;title=Advance+an+account+past+a+stage\u0026amp;description=Advances+an+account+that+passed+a+stage%3A+eligibility+is+decided+again%2C+then+one+successor+account+is+issued+on+the+paper+book+in+the+group+the+stage+names+as+ne\u0026amp;theme=85063b664f29463f86ec0c0f\u0026amp;signature=39f336a85b7d59a39559e3fc1db8e9db2697d49feb28a301cb55672efa51be88\">\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/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"trdrs Engine API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0a0a0a\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/venue-platform-preview/advance-an-account-past-a-stage.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.trdrs.co/#organization\",\"name\":\"trdrs Engine API\",\"url\":\"https://docs.trdrs.co\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.trdrs.co#website\",\"name\":\"trdrs Engine API\",\"url\":\"https://docs.trdrs.co\",\"publisher\":{\"@id\":\"https://docs.trdrs.co/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage#webpage\",\"url\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage\",\"name\":\"Advance an account past a stage\",\"description\":\"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven't moved since the decision. Required scope: stage:advance. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\",\"dateModified\":\"2026-10-23T22:24:27.552Z\",\"isPartOf\":{\"@id\":\"https://docs.trdrs.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.trdrs.co/api-reference/market-data/get-market-data-limits\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Venues\",\"item\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/read-a-venue\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Stages\",\"item\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/read-an-accounts-stage-eligibility\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Advance an account past a stage\",\"item\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage#apireference\",\"headline\":\"Advance an account past a stage\",\"name\":\"Advance an account past a stage\",\"description\":\"Advances an account that passed a stage: eligibility is decided again, then one successor account is issued on the paper book in the group the stage names as next, held to the same risk policy as the account it replaces. Each cycle and stage gets one successor only, so a second attempt, even with another key, returns the account the first one made. It needs an account whose balance trdrs keeps, that is flat and quiet, and whose rules and revision haven't moved since the decision. Required scope: stage:advance. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\",\"url\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage\",\"mainEntityOfPage\":{\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/advance-an-account-past-a-stage#webpage\"},\"dateModified\":\"2026-10-23T22:24:27.552Z\",\"publisher\":{\"@id\":\"https://docs.trdrs.co/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.trdrs.co#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"trdrs Engine API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"trdrs Engine API","nav":{"global":null,"tabs":[{"tab":"Get started","pages":[{"title":"Get started","href":""}]},{"tab":"Guides","dropdowns":[{"dropdown":"Programmatic trading","icon":"code","description":"Trade accounts you hold","groups":[{"group":"Start here","pages":[{"title":"Programmatic trading quickstart","href":"/guides/programmatic-quickstart"}]},{"group":"Trading","pages":[{"title":"Trading overview","sidebarTitle":"Overview","href":"/guides/trading-overview"},{"title":"Place your first order","sidebarTitle":"Place an order","href":"/guides/place-your-first-order"},{"title":"Protect a position","sidebarTitle":"Protect a position","href":"/guides/protect-a-position"},{"title":"Manage working orders","sidebarTitle":"Manage working orders","href":"/guides/manage-working-orders"},{"title":"Close a position","sidebarTitle":"Close a position","href":"/guides/close-a-position"},{"title":"Trade with leverage","sidebarTitle":"Trade with leverage","href":"/guides/trade-with-leverage"},{"title":"Track fills and P\u0026L","sidebarTitle":"Track fills and P\u0026L","href":"/guides/track-fills-and-pnl"}]}]},{"dropdown":"Market data","icon":"chart-line","description":"Read prices, history and streams","pages":[{"title":"Market data overview","sidebarTitle":"Overview","href":"/guides/market-data-overview"},{"title":"Find symbols","sidebarTitle":"Find symbols","href":"/guides/find-symbols"},{"title":"Backfill history","sidebarTitle":"Backfill history","href":"/guides/backfill-history"},{"title":"Stream live market data","sidebarTitle":"Stream live data","href":"/guides/stream-live-data"}]},{"dropdown":"Connect","icon":"link","description":"Build your own trading interface","groups":[{"group":"Start here","pages":[{"title":"Connect","sidebarTitle":"Overview","href":"/guides/connect-overview"},{"title":"Connect quickstart","sidebarTitle":"Quickstart","href":"/guides/connect-quickstart"}]},{"group":"Build","pages":[{"title":"Route your traders' orders","sidebarTitle":"Route your traders' orders","href":"/guides/route-your-traders-orders"},{"title":"Choose your tiles and white-label paper","sidebarTitle":"Tiles and white-label paper","href":"/guides/connect-tiles-and-paper"}]},{"group":"Go live","pages":[{"title":"Pass Connect conformance","sidebarTitle":"Pass conformance","href":"/guides/connect-conformance"},{"title":"Billing for Connect apps","sidebarTitle":"Billing","href":"/guides/connect-billing"},{"title":"Active traders and billing","sidebarTitle":"Active traders","href":"/guides/connect-active-traders"}]}]},{"dropdown":"Venues","icon":"building","description":"Run a prop firm or brokerage","groups":[{"group":"Start here","pages":[{"title":"Prop firms","sidebarTitle":"Prop firms","href":"/guides/prop-firms-overview"},{"title":"Brokerages","sidebarTitle":"Brokerages","href":"/guides/brokerages-overview"},{"title":"Venue quickstart","href":"/guides/business-quickstart"},{"title":"Evaluation quickstart","href":"/quickstart"},{"title":"What your traders get","sidebarTitle":"What your traders get","href":"/what-your-traders-get"}]},{"group":"Set up your venue","pages":[{"title":"Run a venue end to end","sidebarTitle":"Run a venue","href":"/guides/run-a-venue"},{"title":"Venue keys","sidebarTitle":"Venue keys","href":"/guides/venue-keys"},{"title":"Back-office tool","href":"/guides/back-office"}]},{"group":"Run accounts","pages":[{"title":"Venue accounts","sidebarTitle":"Accounts","href":"/guides/venue-accounts"},{"title":"Send your traders to the trading platform","sidebarTitle":"Send traders to trade","href":"/guides/send-traders-to-the-trading-platform"},{"title":"Paper accounts on provider contracts","href":"/guides/paper-provider-contracts"},{"title":"Hedge venue exposure","sidebarTitle":"Hedging","href":"/guides/venue-hedging"},{"title":"Account analytics","sidebarTitle":"Account analytics","href":"/guides/firm-analytics"},{"title":"Read your usage","sidebarTitle":"Read your usage","href":"/guides/read-your-usage"},{"title":"Receive events on your server","sidebarTitle":"Receive events","href":"/guides/receive-events"}]},{"group":"Connect pre-registration","pages":[{"title":"Get listed","sidebarTitle":"Get listed","href":"/guides/get-listed"},{"title":"Register an account","sidebarTitle":"Register an account","href":"/guides/register-an-account"},{"title":"Follow registrations","sidebarTitle":"Follow registrations","href":"/guides/handle-registration-events"}]},{"group":"Check your integration","pages":[{"title":"Requirements","href":"/providers/requirements"},{"title":"Run conformance","href":"/providers/test-evidence"},{"title":"Use your results","href":"/providers/submission"}]}]},{"dropdown":"Providers","icon":"plug","description":"Bring a market to trdrs","pages":[{"title":"Provider conformance","href":"/providers/provider-conformance"},{"title":"Publish a provider integration","href":"/providers/publishing"},{"title":"FXCubic","href":"/providers/fxcubic"},{"title":"Run a testnet provider","href":"/guides/run-a-testnet-provider"},{"title":"Publish a datafeed to your traders","sidebarTitle":"Publish a datafeed","href":"/guides/publish-a-datafeed"},{"title":"Provider data","sidebarTitle":"Provider data","href":"/guides/venue-data"}]},{"dropdown":"Trading interfaces","icon":"display-code","description":"Build your own trading screens","pages":[{"title":"Build a front end","sidebarTitle":"Build a front end","href":"/guides/build-a-front-end"}]}]},{"tab":"API reference","groups":[{"group":"Start here","pages":[{"title":"API reference overview","sidebarTitle":"Overview","href":"/api/overview"}]},{"group":"Endpoints","pages":[{"group":"Market data","pages":[{"group":"Prices and symbols","pages":[{"title":"Get market-data limits","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/config","href":"/api-reference/market-data/get-market-data-limits"},{"title":"Search the symbol catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/symbols","href":"/api-reference/market-data/search-the-symbol-catalog"},{"title":"Get symbol details","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/symbol-info","href":"/api-reference/market-data/get-symbol-details"},{"title":"Get the futures catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/instruments","href":"/api-reference/market-data/get-the-futures-catalog"},{"title":"Get server time","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/time","href":"/api-reference/market-data/get-server-time"},{"title":"Get price history","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/history","href":"/api-reference/market-data/get-price-history"},{"title":"Get quote snapshots","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/quotes","href":"/api-reference/market-data/get-quote-snapshots"},{"title":"Stream live bars","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/stream","href":"/api-reference/market-data/stream-live-bars"},{"title":"Stream multiplexed live bars","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/streams","href":"/api-reference/market-data/stream-multiplexed-live-bars"}]},{"group":"News and calendar","pages":[{"title":"List news headlines","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/news","href":"/api-reference/news/list-news-headlines"},{"title":"Get a news thumbnail","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/news/image/{id}","href":"/api-reference/news/get-a-news-thumbnail"},{"title":"List calendar events","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/calendar","href":"/api-reference/news/list-calendar-events"},{"title":"Stream news","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/news/stream","href":"/api-reference/news/stream-news"},{"title":"Stream calendar updates","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/calendar/stream","href":"/api-reference/news/stream-calendar-updates"}]}]},{"group":"Trading","pages":[{"group":"Orders","pages":[{"title":"Get the net position","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/position","href":"/api-reference/trading/get-the-net-position"},{"title":"Get what the account may do","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/actions","href":"/api-reference/trading/get-what-the-account-may-do"},{"title":"Match a market for an account","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/match","href":"/api-reference/trading/match-a-market-for-an-account"},{"title":"Preview order margin","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/margin-preview","href":"/api-reference/trading/preview-order-margin"},{"title":"Get leverage and margin mode","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/symbol-config","href":"/api-reference/trading/get-leverage-and-margin-mode"},{"title":"Set leverage","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/trading/symbol-config","href":"/api-reference/trading/set-leverage"},{"title":"Set margin mode","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/trading/margin-mode","href":"/api-reference/trading/set-margin-mode"},{"title":"Place an order","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/order","href":"/api-reference/trading/place-an-order"},{"title":"Replace an order","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/replace","href":"/api-reference/trading/replace-an-order"},{"title":"Cancel an order","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/cancel","href":"/api-reference/trading/cancel-an-order"},{"title":"Cancel all working orders","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/cancel-all","href":"/api-reference/trading/cancel-all-working-orders"},{"title":"Protect a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/exits","href":"/api-reference/trading/protect-a-position"},{"title":"Change a bracket","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/trading/exits/{id}","href":"/api-reference/trading/change-a-bracket"},{"title":"Withdraw a bracket","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/trading/exits/{id}","href":"/api-reference/trading/withdraw-a-bracket"},{"title":"Close part of a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/close","href":"/api-reference/trading/close-part-of-a-position"},{"title":"Flatten a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/flatten","href":"/api-reference/trading/flatten-a-position"},{"title":"Flatten the account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/flatten-account","href":"/api-reference/trading/flatten-the-account"},{"title":"Reverse a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/reverse","href":"/api-reference/trading/reverse-a-position"}]},{"group":"Account state","pages":[{"title":"List accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/list","href":"/api-reference/account/list-accounts"},{"title":"List the markets an account trades","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/markets","href":"/api-reference/account/list-the-markets-an-account-trades"},{"title":"Get the account summary","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/summary","href":"/api-reference/account/get-the-account-summary"},{"title":"Get the account snapshot","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/snapshot","href":"/api-reference/account/get-the-account-snapshot"},{"title":"List open positions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/positions","href":"/api-reference/account/list-open-positions"},{"title":"List closed positions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/positions/closed","href":"/api-reference/account/list-closed-positions"},{"title":"List orders","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/orders","href":"/api-reference/account/list-orders"},{"title":"List order history","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/orders/history","href":"/api-reference/account/list-order-history"},{"title":"List fills for an instrument","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/executions","href":"/api-reference/account/list-fills-for-an-instrument"},{"title":"Get daily P\u0026L history","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/pnl/history","href":"/api-reference/account/get-daily-p\u0026l-history"},{"title":"List closed round trips","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/pnl/round-trips","href":"/api-reference/account/list-closed-round-trips"},{"title":"List brackets","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/brackets","href":"/api-reference/account/list-brackets"},{"title":"Stream account updates","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/stream","href":"/api-reference/account/stream-account-updates"},{"title":"Get history sync status","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/sync-status","href":"/api-reference/account/get-history-sync-status"}]},{"group":"Retired risk controls","pages":[{"title":"Get the risk state (deprecated)","deprecated":true,"version":null,"openapi":"/api/openapi.json get /api/risk","href":"/api-reference/account/get-the-risk-state-deprecated"},{"title":"Read the risk state (deprecated)","deprecated":true,"version":null,"openapi":"/api/openapi.json put /api/risk","href":"/api-reference/account/read-the-risk-state-deprecated"},{"title":"Clear the risk lock (deprecated)","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/risk/unlock","href":"/api-reference/account/clear-the-risk-lock-deprecated"}]},{"group":"Evaluation programs","pages":[{"title":"List evaluation programs","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/challenges","href":"/api-reference/challenges/list-evaluation-programs"},{"title":"Create an enrollment","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/challenges/enroll","href":"/api-reference/challenges/create-an-enrollment"},{"title":"List your enrollments","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/enrollments","href":"/api-reference/challenges/list-your-enrollments"},{"title":"List enrollment events","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/enrollments/events","href":"/api-reference/challenges/list-enrollment-events"}]}]},{"group":"Connect","pages":[{"title":"List the built-in providers and how each is signed into","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect/providers","href":"/api-reference/connect/list-the-built-in-providers-and-how-each-is-signed-into"},{"title":"List Connect’s tiles","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect/tiles","href":"/api-reference/connect/list-connect’s-tiles"},{"group":"Connect links","pages":[{"title":"Create a Connect link","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect/links","href":"/api-reference/connect-apps-preview/create-a-connect-link"},{"title":"Read a Connect link","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect/links/{linkId}","href":"/api-reference/connect-apps-preview/read-a-connect-link"},{"title":"Close a Connect link","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/connect/links/{linkId}","href":"/api-reference/connect-apps-preview/close-a-connect-link"}]},{"group":"Hosted Connect's own routes","pages":[{"title":"Mount a Connect link token","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/mount","href":"/api-reference/connect-apps-preview/mount-a-connect-link-token"},{"title":"List the tiles a Connect session offers","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect-link/sessions/{sessionId}/tiles","href":"/api-reference/connect-apps-preview/list-the-tiles-a-connect-session-offers"},{"title":"List a trader's provider connections","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect-link/sessions/{sessionId}/providers","href":"/api-reference/connect-apps-preview/list-a-traders-provider-connections"},{"title":"Open white-label paper in Connect","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/paper","href":"/api-reference/connect-apps-preview/open-white-label-paper-in-connect"},{"title":"Start a provider sign-in window","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/oauth/{provider}","href":"/api-reference/connect-apps-preview/start-a-provider-sign-in-window"},{"title":"Finish a provider sign-in window","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/oauth/{provider}/finish","href":"/api-reference/connect-apps-preview/finish-a-provider-sign-in-window"},{"title":"Complete a Connect provider login","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/complete","href":"/api-reference/connect-apps-preview/complete-a-connect-provider-login"},{"title":"End a hosted Connect session","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/connect-link/sessions/{sessionId}/frame","href":"/api-reference/connect-apps-preview/end-a-hosted-connect-session"}]}]},{"group":"Venues","pages":[{"group":"Venue details","pages":[{"title":"Read a venue","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}","href":"/api-reference/venue-platform-preview/read-a-venue"}]},{"group":"Branding and reference data","pages":[{"title":"Read the venue brand","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/brand","href":"/api-reference/venue-platform-preview/read-the-venue-brand"},{"title":"Update the venue brand","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/venues/{venueId}/brand","href":"/api-reference/venue-platform-preview/update-the-venue-brand"},{"title":"Upload the venue logo","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/brand/logo","href":"/api-reference/venue-platform-preview/upload-the-venue-logo"},{"title":"Read the venue instrument reference catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/reference/instruments","href":"/api-reference/venue-platform-preview/read-the-venue-instrument-reference-catalog"},{"title":"Read registered contract facts for a new instrument","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/reference/contract","href":"/api-reference/venue-platform-preview/read-registered-contract-facts-for-a-new-instrument"},{"title":"Search the markets a venue can list","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/reference/symbols","href":"/api-reference/venue-platform-preview/search-the-markets-a-venue-can-list"}]},{"group":"Instruments","pages":[{"title":"List instrument candidates","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/instruments","href":"/api-reference/venue-platform-preview/list-instrument-candidates"},{"title":"List active instruments","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/instruments/active","href":"/api-reference/venue-platform-preview/list-active-instruments"},{"title":"Read an instrument candidate","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/instruments/{candidateId}","href":"/api-reference/venue-platform-preview/read-an-instrument-candidate"},{"title":"Save an instrument candidate","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/instruments","href":"/api-reference/venue-platform-preview/save-an-instrument-candidate"},{"title":"Activate an instrument version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/instruments/active","href":"/api-reference/venue-platform-preview/activate-an-instrument-version"}]},{"group":"Conditions and groups","pages":[{"title":"List account groups","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conditions/groups","href":"/api-reference/venue-platform-preview/list-account-groups"},{"title":"List condition profiles","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conditions/profiles","href":"/api-reference/venue-platform-preview/list-condition-profiles"},{"title":"Apply a condition profile","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/active","href":"/api-reference/venue-platform-preview/apply-a-condition-profile"},{"title":"Create or update an account group","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/groups","href":"/api-reference/venue-platform-preview/create-or-update-an-account-group"},{"title":"Preview a conditions change","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/preview","href":"/api-reference/venue-platform-preview/preview-a-conditions-change"},{"title":"Publish a condition profile","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/profiles","href":"/api-reference/venue-platform-preview/publish-a-condition-profile"},{"title":"Point a group at a route","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/groups/{groupId}/route","href":"/api-reference/venue-platform-preview/point-a-group-at-a-route"}]},{"group":"Routes","pages":[{"title":"List routes","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/routes","href":"/api-reference/venue-platform-preview/list-routes"},{"title":"Create or update a route","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/routes","href":"/api-reference/venue-platform-preview/create-or-update-a-route"}]},{"group":"Providers and connections","pages":[{"title":"List provider connections","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/connections","href":"/api-reference/venue-platform-preview/list-provider-connections"},{"title":"List discovered provider accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/connections/{connectionId}/accounts","href":"/api-reference/venue-platform-preview/list-discovered-provider-accounts"},{"title":"Read provider validation status","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/connections/{connectionId}/validations/{jobId}","href":"/api-reference/venue-platform-preview/read-provider-validation-status"},{"title":"List provider versions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/providers","href":"/api-reference/venue-platform-preview/list-provider-versions"},{"title":"Create a provider connection draft","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/connections","href":"/api-reference/venue-platform-preview/create-a-provider-connection-draft"},{"title":"Queue read-only provider validation","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/connections/{connectionId}/validate","href":"/api-reference/venue-platform-preview/queue-read-only-provider-validation"},{"title":"Register a public provider version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/providers","href":"/api-reference/venue-platform-preview/register-a-public-provider-version"},{"title":"Show or hide a plugged-in provider to this venue's traders","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/connections/{connectionId}/expose","href":"/api-reference/venue-platform-preview/show-or-hide-a-plugged-in-provider-to-this-venues-traders"},{"title":"Browse public provider integrations","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/provider-catalog/directory","href":"/api-reference/venue-platform-preview/browse-public-provider-integrations"},{"title":"Read your maintained integrations","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/provider-catalog/mine","href":"/api-reference/venue-platform-preview/read-your-maintained-integrations"},{"title":"Create a private provider profile","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles","href":"/api-reference/venue-platform-preview/create-a-private-provider-profile"},{"title":"Update provider profile","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}","href":"/api-reference/venue-platform-preview/update-provider-profile"},{"title":"Upload a provider logo","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/logo","href":"/api-reference/venue-platform-preview/upload-a-provider-logo"},{"title":"Record an immutable provider release","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/releases","href":"/api-reference/venue-platform-preview/record-an-immutable-provider-release"},{"title":"Preview, submit or withdraw a provider release","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/preview-submit-or-withdraw-a-provider-release"},{"title":"Pin a published release to your venue","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/releases/{releaseId}/install","href":"/api-reference/venue-platform-preview/pin-a-published-release-to-your-venue"}]},{"group":"Risk policies","pages":[{"title":"List the venue's risk policies","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/risk-policies","href":"/api-reference/venue-platform-preview/list-the-venues-risk-policies"},{"title":"Store a risk policy version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/risk-policies","href":"/api-reference/venue-platform-preview/store-a-risk-policy-version"},{"title":"Read one risk policy","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/risk-policies/{policyId}","href":"/api-reference/venue-platform-preview/read-one-risk-policy"},{"title":"Publish a risk policy version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/risk-policies/{policyId}/publications","href":"/api-reference/venue-platform-preview/publish-a-risk-policy-version"}]},{"group":"Stages","pages":[{"title":"Read an account's stage eligibility","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/eligibility","href":"/api-reference/venue-platform-preview/read-an-accounts-stage-eligibility"},{"title":"List stage policies","description":"Lists the stage rules you published, 100 to a page: each version's profit target, trading days, session, drawdown and disqualifying rules, and the group a passing account moves to. A published version never changes, and `inForce` marks the version in force for each stage. Required scope: `venue:read`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/stages/policies","href":"/api-reference/venue-platform-preview/list-stage-policies"},{"title":"Advance an account past a stage","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance","href":"/api-reference/venue-platform-preview/advance-an-account-past-a-stage"},{"title":"Put a stage policy in force","description":"Puts a published version of a stage's rules in force, at once and whatever the stage's accounts hold. Each cycle is judged by the version in force when it opened, so new rules reach an account at its next cycle, while a change to the group a passing account moves to applies to the next advance. The response is the activation and its revision. Required scope: `stage:advance`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/stages/active","href":"/api-reference/venue-platform-preview/put-a-stage-policy-in-force"},{"title":"Publish a stage policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/stages/policies","href":"/api-reference/venue-platform-preview/publish-a-stage-policy"}]},{"group":"Retired account controls","pages":[{"title":"Retired account risk controls","deprecated":true,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/risk-controls","href":"/api-reference/venue-platform-preview/retired-account-risk-controls"},{"title":"Retired account risk controls write","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/risk-controls","href":"/api-reference/venue-platform-preview/retired-account-risk-controls-write"}]},{"group":"Venue accounts","pages":[{"title":"List a venue's accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts","href":"/api-reference/venue-platform-preview/list-a-venues-accounts"},{"title":"List existing accounts with original rules","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/existing-accounts","href":"/api-reference/venue-platform-preview/list-existing-accounts-with-original-rules"},{"title":"Issue an account into a group","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts","href":"/api-reference/venue-platform-preview/issue-an-account-into-a-group"},{"title":"Bind a discovered external account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/bind","href":"/api-reference/venue-platform-preview/bind-a-discovered-external-account"},{"title":"Credit, debit or adjust an account's balance","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/balance","href":"/api-reference/venue-platform-preview/credit-debit-or-adjust-an-accounts-balance"},{"title":"Quote an account payout","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/payout","href":"/api-reference/venue-platform-preview/quote-an-account-payout"},{"title":"Record an account payout","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/payout","href":"/api-reference/venue-platform-preview/record-an-account-payout"},{"title":"Reset an account to its starting balance","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/reset","href":"/api-reference/venue-platform-preview/reset-an-account-to-its-starting-balance"},{"title":"Halt trading on an account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/halt","href":"/api-reference/venue-platform-preview/halt-trading-on-an-account"},{"title":"Resume trading on an account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/resume","href":"/api-reference/venue-platform-preview/resume-trading-on-an-account"},{"title":"Read an account's analytics","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/analytics","href":"/api-reference/venue-platform-preview/read-an-accounts-analytics"},{"title":"Revoke an account grant","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/accounts/{accountId}/grants/{grantId}","href":"/api-reference/venue-platform-preview/revoke-an-account-grant"},{"title":"Read account invitation status","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/grants/{grantId}","href":"/api-reference/venue-platform-preview/read-account-invitation-status"},{"title":"Read an account's open liquidation","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/incident","href":"/api-reference/venue-platform-preview/read-an-accounts-open-liquidation"},{"title":"Read what one account may trade","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/instruments","href":"/api-reference/venue-platform-preview/read-what-one-account-may-trade"},{"title":"Read a customer account's books","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/ledger","href":"/api-reference/venue-platform-preview/read-a-customer-accounts-books"},{"title":"Read one account's effective conditions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conditions/accounts/{accountId}/effective","href":"/api-reference/venue-platform-preview/read-one-accounts-effective-conditions"},{"title":"Invite an account recipient","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/grants","href":"/api-reference/venue-platform-preview/invite-an-account-recipient"},{"title":"Move an account between groups","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/accounts/{accountId}/group","href":"/api-reference/venue-platform-preview/move-an-account-between-groups"},{"title":"Set per-account safety limits","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/accounts/{accountId}/risk","href":"/api-reference/venue-platform-preview/set-per-account-safety-limits"}]},{"group":"Venue traders","pages":[{"title":"Send a trader to the trading platform","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/handoffs","href":"/api-reference/venue-platform-preview/send-a-trader-to-the-trading-platform"},{"title":"Suspend a trader","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/venues/{venueId}/traders/{trader}/suspension","href":"/api-reference/venue-platform-preview/suspend-a-trader"},{"title":"Lift a trader's suspension","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/traders/{trader}/suspension","href":"/api-reference/venue-platform-preview/lift-a-traders-suspension"}]},{"group":"Hedging","pages":[{"title":"Read venue hedge state","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/hedges","href":"/api-reference/venue-platform-preview/read-venue-hedge-state"},{"title":"Publish a hedge policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/policies","href":"/api-reference/venue-platform-preview/publish-a-hedge-policy"},{"title":"Activate, pause or stop a hedge policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/activation","href":"/api-reference/venue-platform-preview/activate-pause-or-stop-a-hedge-policy"},{"title":"Preview or persist the next hedge target","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/calculate","href":"/api-reference/venue-platform-preview/preview-or-persist-the-next-hedge-target"},{"title":"Dispatch one prepared hedge intent","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/intents/{intentId}/dispatch","href":"/api-reference/venue-platform-preview/dispatch-one-prepared-hedge-intent"},{"title":"Reconcile an uncertain hedge intent","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/intents/{intentId}/reconcile","href":"/api-reference/venue-platform-preview/reconcile-an-uncertain-hedge-intent"},{"title":"Stop every hedge policy for this venue","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/emergency-stop","href":"/api-reference/venue-platform-preview/stop-every-hedge-policy-for-this-venue"},{"title":"Flatten a hedge destination","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/flatten","href":"/api-reference/venue-platform-preview/flatten-a-hedge-destination"},{"title":"Unbind a hedge account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/unbind","href":"/api-reference/venue-platform-preview/unbind-a-hedge-account"},{"title":"Read risk across the venue's accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/risk","href":"/api-reference/venue-platform-preview/read-risk-across-the-venues-accounts"}]},{"group":"Venue rules","pages":[{"title":"Turn venue rules on or off","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/rules","href":"/api-reference/venue-platform-preview/turn-venue-rules-on-or-off"}]},{"group":"Usage and webhooks","pages":[{"title":"Read the venue's metered usage for a month","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/usage","href":"/api-reference/venue-platform-preview/read-the-venues-metered-usage-for-a-month"},{"title":"Read the accounts behind the venue's usage","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/usage/accounts","href":"/api-reference/venue-platform-preview/read-the-accounts-behind-the-venues-usage"},{"title":"Read the receipt of one balance operation","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/balance-ops/{referenceId}","href":"/api-reference/venue-platform-preview/read-the-receipt-of-one-balance-operation"},{"title":"List the venue's webhooks","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/webhooks","href":"/api-reference/venue-platform-preview/list-the-venues-webhooks"},{"title":"Register a webhook","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/webhooks","href":"/api-reference/venue-platform-preview/register-a-webhook"},{"title":"Remove a webhook","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/webhooks/{webhookId}","href":"/api-reference/venue-platform-preview/remove-a-webhook"},{"title":"Send a signed test ping to a webhook","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/webhooks/{webhookId}/test","href":"/api-reference/venue-platform-preview/send-a-signed-test-ping-to-a-webhook"},{"title":"Read a webhook's delivery log","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/webhooks/{webhookId}/deliveries","href":"/api-reference/venue-platform-preview/read-a-webhooks-delivery-log"}]},{"group":"Pre-registration","pages":[{"title":"Pre-register a trader’s account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/pre-registration/registrations","href":"/api-reference/connect/pre-register-a-trader’s-account"},{"title":"List pre-registered accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/pre-registration/registrations","href":"/api-reference/connect/list-pre-registered-accounts"},{"title":"Cancel a pre-registration","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/pre-registration/registrations","href":"/api-reference/connect/cancel-a-pre-registration"}]},{"group":"Pre-registration conformance (sandbox)","pages":[{"title":"Start a sandbox conformance run","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/pre-registration/conformance/runs","href":"/api-reference/connect/start-a-sandbox-conformance-run"},{"title":"Read conformance run results","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/pre-registration/conformance/runs/{id}","href":"/api-reference/connect/read-conformance-run-results"},{"title":"Finish a sandbox conformance run","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/pre-registration/conformance/runs/{id}/close","href":"/api-reference/connect/finish-a-sandbox-conformance-run"}]}]}]}]},{"tab":"SDKs and tools","dropdowns":[{"dropdown":"Overview","icon":"flag-checkered","description":"Choose a tool for your integration","pages":[{"title":"SDKs and tools","sidebarTitle":"Overview","href":"/sdks"}]},{"dropdown":"Connect","icon":"link","description":"Embed hosted Connect with the Connect SDK","pages":[{"title":"Connect SDK","sidebarTitle":"Connect SDK","href":"/sdks/connect"}]},{"dropdown":"TypeScript","icon":"cube","description":"Read about the TypeScript SDK and its availability","pages":[{"title":"TypeScript SDK","sidebarTitle":"TypeScript SDK (unavailable)","href":"/sdks/typescript"}]},{"dropdown":"Charting","icon":"chart-line","description":"Build charts with Quick Charts","pages":[{"title":"Charting","href":"/chart-integration"}]},{"dropdown":"CLI","icon":"terminal","description":"Read about the CLI and its availability","pages":[{"title":"CLI","sidebarTitle":"CLI (unavailable)","href":"/cli"}]},{"dropdown":"AI","icon":"robot","description":"Build and check an integration with a coding agent","groups":[{"group":"Start here","pages":[{"title":"Build with AI","href":"/ai"}]},{"group":"Prompts","pages":[{"title":"Agent prompts","href":"/sdks/agent-prompts"}]}]}]}]},"basePath":"","title":"Advance an account past a stage - trdrs Engine API","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}