Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence GET /symbols/resolve takes, and each row answers as that route would, in request order with index. A row that cannot be resolved fails alone; the call still answers 200. A row with resolution_unavailable was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call.
One row per item, in request order. A row answers as GET /symbols/resolve would, plus index; resolution_unavailable means send that row again.
Option 1
Option 2
Option 3
Option 4
Option 5
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Itoflow developer docs","description":"Itoflow takes an investment idea from research to live trading, with agents doing the work. Research an idea, have agents watch it and your portfolios around the clock, run it as paper strategies, then trade it live; a person approves every live trade. Each step keeps the context of the last, and Itoflow supplies the market data and compute. Start with one part, such as the factor risk engine with ETF look-through, from Claude, ChatGPT or Codex over MCP, or from your code over HTTP.","colors":{"primary":"#0079AD","light":"#4FB3E4","dark":"#0079AD"},"logo":{"light":"https://mintcdn.com/itoflow/sRxx5iBL0vfWaMBY/assets/logo-light.svg?fit=max\u0026auto=format\u0026n=sRxx5iBL0vfWaMBY\u0026q=85\u0026s=3d23e4b830dc16fd51eb271bce00fa46","dark":"https://mintcdn.com/itoflow/sRxx5iBL0vfWaMBY/assets/logo-dark.svg?fit=max\u0026auto=format\u0026n=sRxx5iBL0vfWaMBY\u0026q=85\u0026s=5d169026671363e61b6117aa443d0dcd"},"favicon":{"light":"https://mintcdn.com/itoflow/sRxx5iBL0vfWaMBY/assets/favicon-light.svg?fit=max\u0026auto=format\u0026n=sRxx5iBL0vfWaMBY\u0026q=85\u0026s=38166eb10bbe84f06f29e63640daddcd","dark":"https://mintcdn.com/itoflow/sRxx5iBL0vfWaMBY/assets/favicon-dark.svg?fit=max\u0026auto=format\u0026n=sRxx5iBL0vfWaMBY\u0026q=85\u0026s=8e46915f491ba449c8d9d0bef5cc78a8"},"api":{"playground":{"display":"interactive","proxy":false,"credentials":false},"examples":{"languages":["curl","python","javascript"],"prefill":false},"url":"full"},"appearance":{"default":"dark","strict":false},"background":{"color":{"light":"#FDFDFD","dark":"#0B1419"}},"navbar":{"links":[{"href":"https://itoflow.ai/pricing","label":"Pricing"},{"href":"https://itoflow.ai/blog","label":"Blog"}],"primary":{"type":"button","label":"Open Itoflow","href":"https://app.itoflow.ai"}},"footer":{"links":[{"header":"Product","items":[{"label":"Itoflow","href":"https://itoflow.ai"},{"label":"Open the app","href":"https://app.itoflow.ai"},{"label":"Pricing","href":"https://itoflow.ai/pricing"},{"label":"Benchmark","href":"https://itoflow.ai/benchmark"}]},{"header":"Learn","items":[{"label":"Blog","href":"https://itoflow.ai/blog"},{"label":"Help center","href":"https://itoflow.ai/help"}]},{"header":"Trust","items":[{"label":"Security","href":"https://itoflow.ai/security"},{"label":"Privacy","href":"https://itoflow.ai/privacy"},{"label":"Terms","href":"https://itoflow.ai/terms"}]}]},"fonts":{"heading":{"family":"Reckless","weight":400,"source":"assets/fonts/reckless.woff2","format":"woff2"},"body":{"family":"Onest","weight":400,"source":"assets/fonts/onest-latin.woff2","format":"woff2"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"itoflow","hasAudioNarration":false,"actualSubdomain":"itoflow","customDomains":["docs.itoflow.ai"],"gitSource":{"type":"github","owner":"itoflow","repo":"ai_researcher","deployBranch":"develop","contentDirectory":"developer-docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af6c085993a78013fddf9ab","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"Endpoints","count":156},{"language":"default","tag":"Portfolios","count":23},{"language":"default","tag":"Strategies","count":22},{"language":"default","tag":"Billing","count":19},{"language":"default","tag":"Monitors","count":17},{"language":"default","tag":"Market data","count":14},{"language":"default","tag":"Chat","count":13},{"language":"default","tag":"Use cases","count":11},{"language":"default","tag":"Features","count":10},{"language":"default","tag":"Brokers","count":10}]},"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":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"@font-face{font-family:\"Onest\";src:url(\"/assets/fonts/onest-latin.woff2\") format(\"woff2\");font-style:normal;font-weight:400 800;font-display:swap}@font-face{font-family:\"Reckless\";src:url(\"/assets/fonts/reckless.woff2\") format(\"woff2\");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:\"Geist Mono\";src:url(\"/assets/fonts/geist-mono-latin.woff2\") format(\"woff2\");font-style:normal;font-weight:400 600;font-display:swap}h1,h2,h3:not(.sidebar-title),h4,h5,h6{font-weight:400;font-feature-settings:\"cv02\", \"cv03\", \"cv04\", \"cv11\", \"liga\" 1}code,pre,kbd,samp,.font-mono{font-family:\"Geist Mono\", monospace}body{font-weight:450}.sidebar-title{font-weight:650;font-size:0.75rem;letter-spacing:0.06em;text-transform:uppercase}"}],"page":{"pagePath":"api-reference/endpoints/post__symbols_resolve_batch","slug":"/api-reference/endpoints/post__symbols_resolve_batch","pageMetadata":{"title":"Resolve canonical instrument identifiers in bulk","description":"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence `GET /symbols/resolve` takes, and each row answers as that route would, in request order with `index`. A row that cannot be resolved fails alone; the call still answers 200. A row with `resolution_unavailable` was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call.\n\nOperation ID: post__symbols_resolve_batch.","deprecated":null,"version":null,"sidebarTitle":"Resolve canonical instrument identifiers in bulk","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /symbols/resolve/batch","href":"/api-reference/endpoints/post__symbols_resolve_batch","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence \", _jsx(_components.code, {\n children: \"GET /symbols/resolve\"\n }), \" takes, and each row answers as that route would, in request order with \", _jsx(_components.code, {\n children: \"index\"\n }), \". A row that cannot be resolved fails alone; the call still answers 200. A row with \", _jsx(_components.code, {\n children: \"resolution_unavailable\"\n }), \" was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Operation ID: post__symbols_resolve_batch.\"\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Resolve canonical instrument identifiers in bulk","description":"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence `GET /symbols/resolve` takes, and each row answers as that route would, in request order with `index`. A row that cannot be resolved fails alone; the call still answers 200. A row with `resolution_unavailable` was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call.\n\nOperation ID: post__symbols_resolve_batch.","deprecated":null,"version":null,"sidebarTitle":"Resolve canonical instrument identifiers in bulk","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /symbols/resolve/batch","href":"/api-reference/endpoints/post__symbols_resolve_batch","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence `GET /symbols/resolve` takes, and each row answers as that route would, in request order with `index`. A row that cannot be resolved fails alone; the call still answers 200. A row with `resolution_unavailable` was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call.\n\nOperation ID: post__symbols_resolve_batch.","operationId":"post__symbols_resolve_batch","requestBody":"eb4f0414-0149-4e72-96de-5c8a460b6552","responses":{"200":"0c3c44b9-23f0-49bd-9503-7ed0e27c6259","400":"5f002e5a-ad6d-4f3a-a17a-34e84511e5f9","401":"ca46bd38-f56a-4c6d-98ed-c8317420beb4","500":"60400728-c342-4bdb-87b5-df85c5014aab"},"security":["fb41bcc2-53b7-46b5-ac4b-4197cd4a6a86"],"summary":"Resolve canonical instrument identifiers in bulk","tags":["Market data"],"x-mint":{"href":"/api-reference/endpoints/post__symbols_resolve_batch","metadata":{"playground":"simple","sidebarTitle":"Resolve canonical instrument identifiers in bulk","title":"Resolve canonical instrument identifiers in bulk"}},"method":"post","type":"path","servers":["885fa0e1-2ea5-48b1-835e-2157d8c1a66e"],"path":"/symbols/resolve/batch","baseUrlOptions":["https://api.itoflow.ai"],"title":"Resolve canonical instrument identifiers in bulk","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","disableProxy":true,"urlDisplay":"full"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"items":{"description":"Identifier evidence for each instrument, with the same fields as the `GET /symbols/resolve` query. Rows come back in this order.","example":[{"exchange":"US","ticker":"AAPL"},{"isin":"US5949181045"},{"mic":"XNAS","ticker":"QQQ"}],"items":{"additionalProperties":false,"properties":{"broker_symbol":{"maxLength":80,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].broker_symbol","typeLabel":"string"},"company_name":{"maxLength":500,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].company_name","typeLabel":"string"},"currency":{"maxLength":10,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].currency","typeLabel":"string"},"exchange":{"description":"Supported Itoflow exchange code such as US or LSE; do not pass a venue name such as NASDAQ.","maxLength":20,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].exchange","typeLabel":"string"},"isin":{"maxLength":20,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].isin","typeLabel":"string"},"mic":{"description":"ISO 10383 market identifier code used as venue evidence, such as XNAS.","maxLength":10,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].mic","typeLabel":"string"},"siq_symbol":{"maxLength":70,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].siq_symbol","typeLabel":"string"},"ticker":{"description":"Ticker on the supplied exchange or MIC. Letters followed by one dot, slash or space and one or two class letters use the dashed listing when it exists (BRK.B, BRK/B or BRK B becomes BRK-B). BRKB is not guessed. Other evidence must agree.","maxLength":80,"minLength":1,"type":"string","uniqueKey":"\\items.items.[INDEX].ticker","typeLabel":"string"}},"type":"object","uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"maxItems":3000,"minItems":1,"type":"array","isRequired":true,"uniqueKey":"\\items","typeLabel":"object[]"}},"required":["items"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"items":[{"exchange":"US","ticker":"AAPL"},{"isin":"US5949181045"},{"mic":"XNAS","ticker":"QQQ"}]}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"0c3c44b9-23f0-49bd-9503-7ed0e27c6259":{"content":{"application/json":{"schema":{"properties":{"results":{"description":"One row per item, in request order. A row answers as `GET /symbols/resolve` would, plus `index`; `resolution_unavailable` means send that row again.","items":{"oneOf":[{"type":"object","required":["index","instrument","ok"],"properties":{"instrument":{"properties":{"currency":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.instrument.currency","typeLabel":"string"},"exchange":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.instrument.exchange","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.instrument.name","typeLabel":"string"},"siq_symbol":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.instrument.siq_symbol","typeLabel":"string"},"broker_symbol":{"type":"string","uniqueKey":"results.items.[INDEX].oneOf.0.instrument.broker_symbol","typeLabel":"string"},"isin":{"type":"string","uniqueKey":"results.items.[INDEX].oneOf.0.instrument.isin","typeLabel":"string"},"mic":{"type":"string","uniqueKey":"results.items.[INDEX].oneOf.0.instrument.mic","typeLabel":"string"}},"required":["currency","exchange","name","siq_symbol"],"type":"object","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.instrument","typeLabel":"object"},"ok":{"enum":[true],"type":"boolean","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.ok","typeLabel":"enum\u003cboolean>"},"index":{"description":"Position of the row in `items`.","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.0.index","typeLabel":"integer"}},"uniqueKey":"results.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["index","error","message","ok"],"properties":{"error":{"enum":["canonical_currency_missing","exchange_or_mic_required","identifier_evidence_missing","instrument_identifier_conflict","instrument_identity_unresolved"],"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.1.error","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.1.message","typeLabel":"string"},"ok":{"enum":[false],"type":"boolean","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.1.ok","typeLabel":"enum\u003cboolean>"},"index":{"description":"Position of the row in `items`.","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.1.index","typeLabel":"integer"},"missing_evidence":{"items":{"type":"string","uniqueKey":"results.items.[INDEX].oneOf.1.missing_evidence.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"results.items.[INDEX].oneOf.1.missing_evidence","typeLabel":"string[]"}},"uniqueKey":"results.items.[INDEX].oneOf.1","typeLabel":"object"},{"type":"object","required":["index","error","message","ok","supported_exchanges"],"properties":{"error":{"enum":["unsupported_exchange"],"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.2.error","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.2.message","typeLabel":"string"},"ok":{"enum":[false],"type":"boolean","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.2.ok","typeLabel":"enum\u003cboolean>"},"supported_exchanges":{"items":{"type":"string","uniqueKey":"results.items.[INDEX].oneOf.2.supported_exchanges.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.2.supported_exchanges","typeLabel":"string[]"},"index":{"description":"Position of the row in `items`.","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.2.index","typeLabel":"integer"}},"uniqueKey":"results.items.[INDEX].oneOf.2","typeLabel":"object"},{"type":"object","required":["index","error","message","ok","supported_mics"],"properties":{"error":{"enum":["unsupported_mic"],"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.3.error","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.3.message","typeLabel":"string"},"ok":{"enum":[false],"type":"boolean","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.3.ok","typeLabel":"enum\u003cboolean>"},"supported_mics":{"items":{"type":"string","uniqueKey":"results.items.[INDEX].oneOf.3.supported_mics.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.3.supported_mics","typeLabel":"string[]"},"index":{"description":"Position of the row in `items`.","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.3.index","typeLabel":"integer"}},"uniqueKey":"results.items.[INDEX].oneOf.3","typeLabel":"object"},{"type":"object","required":["error","index","message","ok"],"properties":{"error":{"enum":["resolution_unavailable"],"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.4.error","typeLabel":"enum\u003cstring>"},"index":{"description":"Position of the row in `items`.","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.4.index","typeLabel":"integer"},"message":{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.4.message","typeLabel":"string"},"ok":{"enum":[false],"type":"boolean","isRequired":true,"uniqueKey":"results.items.[INDEX].oneOf.4.ok","typeLabel":"enum\u003cboolean>"}},"uniqueKey":"results.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"results.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"results","typeLabel":"object[]"}},"required":["results"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"results":[{"instrument":{"currency":"\u003cstring>","exchange":"\u003cstring>","name":"\u003cstring>","siq_symbol":"\u003cstring>","broker_symbol":"\u003cstring>","isin":"\u003cstring>","mic":"\u003cstring>"},"ok":true,"index":1}]}}},"exampleType":"generated"}},"description":"One resolution row per item","exampleType":"generated"},"5f002e5a-ad6d-4f3a-a17a-34e84511e5f9":{"content":{"application/json":{"schema":{"properties":{"error":{"description":"Error type or code","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"available":{"description":"Optional available amount or value","type":"string","uniqueKey":"available","typeLabel":"string"},"billing_action":{"description":"Action that resolves a billing-related rejection","properties":{"href":{"type":"string","isRequired":true,"uniqueKey":"billing_action.href","typeLabel":"string"},"kind":{"enum":["upgrade","payment_method","spending_cap","billing"],"type":"string","isRequired":true,"uniqueKey":"billing_action.kind","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"billing_action.label","typeLabel":"string"}},"required":["href","label","kind"],"type":"object","uniqueKey":"billing_action","typeLabel":"object"},"code":{"description":"Machine-readable error code","type":"string","uniqueKey":"code","typeLabel":"string"},"currentVersion":{"description":"Current server-side version, when relevant","type":"number","uniqueKey":"currentVersion","typeLabel":"number"},"details":{"description":"Optional structured error details","uniqueKey":"details","typeLabel":"any"},"expectedVersion":{"description":"Client-provided expected version, when relevant","type":"number","uniqueKey":"expectedVersion","typeLabel":"number"},"message":{"description":"Human-readable error message","type":"string","uniqueKey":"message","typeLabel":"string"},"requested":{"description":"Optional requested amount or value","type":"string","uniqueKey":"requested","typeLabel":"string"},"usage":{"description":"Optional usage metadata for limit errors","uniqueKey":"usage","typeLabel":"any"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","available":"\u003cstring>","billing_action":{"href":"\u003cstring>","kind":"upgrade","label":"\u003cstring>"},"code":"\u003cstring>","currentVersion":123,"details":"\u003cunknown>","expectedVersion":123,"message":"\u003cstring>","requested":"\u003cstring>","usage":"\u003cunknown>"}}},"exampleType":"generated"}},"description":"Invalid batch request","exampleType":"generated"},"ca46bd38-f56a-4c6d-98ed-c8317420beb4":{"content":{"application/json":{"schema":{"properties":{"error":{"description":"Error type or code","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"available":{"description":"Optional available amount or value","type":"string","uniqueKey":"available","typeLabel":"string"},"billing_action":{"description":"Action that resolves a billing-related rejection","properties":{"href":{"type":"string","isRequired":true,"uniqueKey":"billing_action.href","typeLabel":"string"},"kind":{"enum":["upgrade","payment_method","spending_cap","billing"],"type":"string","isRequired":true,"uniqueKey":"billing_action.kind","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"billing_action.label","typeLabel":"string"}},"required":["href","label","kind"],"type":"object","uniqueKey":"billing_action","typeLabel":"object"},"code":{"description":"Machine-readable error code","type":"string","uniqueKey":"code","typeLabel":"string"},"currentVersion":{"description":"Current server-side version, when relevant","type":"number","uniqueKey":"currentVersion","typeLabel":"number"},"details":{"description":"Optional structured error details","uniqueKey":"details","typeLabel":"any"},"expectedVersion":{"description":"Client-provided expected version, when relevant","type":"number","uniqueKey":"expectedVersion","typeLabel":"number"},"message":{"description":"Human-readable error message","type":"string","uniqueKey":"message","typeLabel":"string"},"requested":{"description":"Optional requested amount or value","type":"string","uniqueKey":"requested","typeLabel":"string"},"usage":{"description":"Optional usage metadata for limit errors","uniqueKey":"usage","typeLabel":"any"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","available":"\u003cstring>","billing_action":{"href":"\u003cstring>","kind":"upgrade","label":"\u003cstring>"},"code":"\u003cstring>","currentVersion":123,"details":"\u003cunknown>","expectedVersion":123,"message":"\u003cstring>","requested":"\u003cstring>","usage":"\u003cunknown>"}}},"exampleType":"generated"}},"description":"Authentication required","exampleType":"generated"},"60400728-c342-4bdb-87b5-df85c5014aab":{"content":{"application/json":{"schema":{"properties":{"error":{"description":"Error type or code","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"available":{"description":"Optional available amount or value","type":"string","uniqueKey":"available","typeLabel":"string"},"billing_action":{"description":"Action that resolves a billing-related rejection","properties":{"href":{"type":"string","isRequired":true,"uniqueKey":"billing_action.href","typeLabel":"string"},"kind":{"enum":["upgrade","payment_method","spending_cap","billing"],"type":"string","isRequired":true,"uniqueKey":"billing_action.kind","typeLabel":"enum\u003cstring>"},"label":{"type":"string","isRequired":true,"uniqueKey":"billing_action.label","typeLabel":"string"}},"required":["href","label","kind"],"type":"object","uniqueKey":"billing_action","typeLabel":"object"},"code":{"description":"Machine-readable error code","type":"string","uniqueKey":"code","typeLabel":"string"},"currentVersion":{"description":"Current server-side version, when relevant","type":"number","uniqueKey":"currentVersion","typeLabel":"number"},"details":{"description":"Optional structured error details","uniqueKey":"details","typeLabel":"any"},"expectedVersion":{"description":"Client-provided expected version, when relevant","type":"number","uniqueKey":"expectedVersion","typeLabel":"number"},"message":{"description":"Human-readable error message","type":"string","uniqueKey":"message","typeLabel":"string"},"requested":{"description":"Optional requested amount or value","type":"string","uniqueKey":"requested","typeLabel":"string"},"usage":{"description":"Optional usage metadata for limit errors","uniqueKey":"usage","typeLabel":"any"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","available":"\u003cstring>","billing_action":{"href":"\u003cstring>","kind":"upgrade","label":"\u003cstring>"},"code":"\u003cstring>","currentVersion":123,"details":"\u003cunknown>","expectedVersion":123,"message":"\u003cstring>","requested":"\u003cstring>","usage":"\u003cunknown>"}}},"exampleType":"generated"}},"description":"A fault that sending the rows again would not fix, such as a database failure","exampleType":"generated"}},"security":{"fb41bcc2-53b7-46b5-ac4b-4197cd4a6a86":{"bearerAuth":{"bearerFormat":"JWT","description":"Itoflow access token issued for the Itoflow API.","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"885fa0e1-2ea5-48b1-835e-2157d8c1a66e":{"description":"Itoflow API","url":"https://api.itoflow.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"bearerFormat":"JWT","description":"Itoflow access token issued for the Itoflow API.","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Itoflow access token issued for the Itoflow API.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi/itoflow-public.openapi.json"},"subdomain":"itoflow","siteName":"Itoflow developer docs","title":"Resolve canonical instrument identifiers in bulk - Itoflow developer docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-13T07:47:26.057Z","originalFileLocation":"api-reference/endpoints/post__symbols_resolve_batch.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=\"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence GET /symbols/resolve takes, and each row answers as that route would, in request order with index. A row that cannot be resolved fails alone; the call still answers 200. A row with resolution_unavailable was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call. Operation ID: post__symbols_resolve_batch.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Itoflow developer docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_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/itoflow/TsEkVxPr_ppj41sQ/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Resolve canonical instrument identifiers in bulk - Itoflow developer docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence GET /symbols/resolve takes, and each row answers as that route would, in request order with index. A row that cannot be resolved fails alone; the call still answers 200. A row with resolution_unavailable was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call. Operation ID: post__symbols_resolve_batch.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Itoflow developer docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://itoflow.mintlify.site/_mintlify/api/og/v2?division=Market+data\u0026amp;title=Resolve+canonical+instrument+identifiers+in+bulk\u0026amp;description=Resolve+up+to+3%2C000+instruments+in+one+call%2C+for+example+every+name+in+a+holdings+file+before+pricing+it.+Each+item+takes+the+evidence+%60GET+%2Fsymbols%2Fresolve%60+ta\u0026amp;theme=dad8b8aab01d3e9507fe66b3\u0026amp;signature=a8b55555eb0025ad054847282efa4adafaadb35cf7c8f48512358eeb97706667\">\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=\"Resolve canonical instrument identifiers in bulk - Itoflow developer docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence GET /symbols/resolve takes, and each row answers as that route would, in request order with index. A row that cannot be resolved fails alone; the call still answers 200. A row with resolution_unavailable was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call. Operation ID: post__symbols_resolve_batch.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://itoflow.mintlify.site/_mintlify/api/og/v2?division=Market+data\u0026amp;title=Resolve+canonical+instrument+identifiers+in+bulk\u0026amp;description=Resolve+up+to+3%2C000+instruments+in+one+call%2C+for+example+every+name+in+a+holdings+file+before+pricing+it.+Each+item+takes+the+evidence+%60GET+%2Fsymbols%2Fresolve%60+ta\u0026amp;theme=dad8b8aab01d3e9507fe66b3\u0026amp;signature=a8b55555eb0025ad054847282efa4adafaadb35cf7c8f48512358eeb97706667\">\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/itoflow/TsEkVxPr_ppj41sQ/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Itoflow developer docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0079AD\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/endpoints/post__symbols_resolve_batch.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.itoflow.ai/#organization\",\"name\":\"Itoflow developer docs\",\"url\":\"https://docs.itoflow.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/itoflow/sRxx5iBL0vfWaMBY/assets/logo-light.svg?fit=max\u0026auto=format\u0026n=sRxx5iBL0vfWaMBY\u0026q=85\u0026s=3d23e4b830dc16fd51eb271bce00fa46\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.itoflow.ai#website\",\"name\":\"Itoflow developer docs\",\"url\":\"https://docs.itoflow.ai\",\"publisher\":{\"@id\":\"https://docs.itoflow.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch#webpage\",\"url\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch\",\"name\":\"Resolve canonical instrument identifiers in bulk\",\"description\":\"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence GET /symbols/resolve takes, and each row answers as that route would, in request order with index. A row that cannot be resolved fails alone; the call still answers 200. A row with resolution_unavailable was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call. Operation ID: post__symbols_resolve_batch.\",\"dateModified\":\"2026-11-13T07:47:26.057Z\",\"isPartOf\":{\"@id\":\"https://docs.itoflow.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.itoflow.ai/api-reference/endpoints/get__account_billing_costs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Market data\",\"item\":\"https://docs.itoflow.ai/api-reference/endpoints/get__benchmarks\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Resolve canonical instrument identifiers in bulk\",\"item\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch#apireference\",\"headline\":\"Resolve canonical instrument identifiers in bulk\",\"name\":\"Resolve canonical instrument identifiers in bulk\",\"description\":\"Resolve up to 3,000 instruments in one call, for example every name in a holdings file before pricing it. Each item takes the evidence GET /symbols/resolve takes, and each row answers as that route would, in request order with index. A row that cannot be resolved fails alone; the call still answers 200. A row with resolution_unavailable was not finished within this call: send those rows again. A fault that sending a row again would not fix, such as a database failure, fails the call. Operation ID: post__symbols_resolve_batch.\",\"url\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch\",\"mainEntityOfPage\":{\"@id\":\"https://docs.itoflow.ai/api-reference/endpoints/post__symbols_resolve_batch#webpage\"},\"dateModified\":\"2026-11-13T07:47:26.057Z\",\"publisher\":{\"@id\":\"https://docs.itoflow.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.itoflow.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Itoflow developer docs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Itoflow developer docs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/endpoints/post__symbols_resolve_batch.md","siteName":"Itoflow developer docs","nav":{"global":null,"groups":[{"group":"Get started","pages":[{"title":"Itoflow developer docs","sidebarTitle":"Overview","href":"/index"},{"title":"Itoflow MCP","sidebarTitle":"Why use MCP","href":"/mcp/overview"},{"title":"Connect your AI assistant","href":"/mcp/install"},{"title":"Use Itoflow from your assistant","href":"/mcp/usage"},{"title":"Read the docs with AI tools","href":"/guides/ai-tools"}]},{"group":"Platform","pages":[{"title":"How Itoflow works","href":"/platform/how-itoflow-works"},{"title":"The agent harness","href":"/platform/agent-harness"},{"title":"Quant engine and risk model","href":"/platform/quant-engine"},{"title":"Design principles","href":"/guides/design-principles"}]},{"group":"Use cases","pages":[{"title":"Use cases","sidebarTitle":"All use cases","href":"/use-cases/overview"},{"title":"Test a signal or dataset","href":"/use-cases/test-a-signal"},{"title":"Build and stress-test a strategy idea","href":"/use-cases/stress-test-a-strategy-idea"},{"title":"Decide whether a name improves a book","href":"/use-cases/add-a-name-to-a-book"},{"title":"Compare tax-loss harvesting rules","href":"/use-cases/compare-tax-loss-harvesting"},{"title":"Measure a book's factor risk","href":"/use-cases/measure-factor-risk"},{"title":"Analyze your Interactive Brokers portfolio","href":"/use-cases/interactive-brokers-risk"},{"title":"Monitor a portfolio","href":"/use-cases/portfolio-monitoring"},{"title":"Run a strategy under a mandate","href":"/use-cases/run-a-strategy"},{"title":"Get a daily news brief","href":"/use-cases/daily-news-brief"},{"title":"Research with your own code and tools","href":"/use-cases/research-with-your-code"}]},{"group":"Features","pages":[{"title":"Chat","href":"/features/chat"},{"title":"Portfolios and trade approvals","href":"/features/portfolios"},{"title":"Strategies","href":"/features/strategies"},{"title":"Monitors","href":"/features/monitors"},{"title":"Market data and risk","href":"/features/market-data"},{"title":"Broker connections","href":"/features/brokers"},{"title":"Connect GitHub and MCP servers","href":"/features/integrations"},{"title":"Sharing","href":"/features/sharing"},{"title":"Notifications","href":"/features/notifications"},{"title":"Billing and credits","href":"/features/billing"}]},{"group":"HTTP API","pages":[{"title":"Make your first API request","href":"/quickstart/http"},{"title":"Authentication","href":"/authentication"},{"title":"API conventions","href":"/guides/api-conventions"},{"title":"HTTP API overview","href":"/api-reference/overview"},{"title":"Risk runs","href":"/api-reference/risk-runs"},{"title":"Risk measure","href":"/api-reference/risk-measure"},{"title":"API coverage","href":"/api-reference/coverage"},{"title":"Find and resolve symbols","href":"/guides/symbols"},{"title":"SDKs and client libraries","href":"/sdk/overview"}]},{"group":"Troubleshooting","pages":[{"title":"MCP troubleshooting","href":"/mcp/troubleshooting"},{"title":"API troubleshooting","href":"/troubleshooting"}]},{"group":"Endpoints","pages":[{"group":"Account","pages":[{"title":"Get billing costs","deprecated":null,"version":null,"sidebarTitle":"Get billing costs","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /account/billing-costs","href":"/api-reference/endpoints/get__account_billing_costs"},{"title":"Update account display currency","deprecated":null,"version":null,"sidebarTitle":"Update account display currency","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json patch /account/display-currency","href":"/api-reference/endpoints/patch__account_display_currency"},{"title":"Get account display preferences","deprecated":null,"version":null,"sidebarTitle":"Get account display preferences","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /account/preferences","href":"/api-reference/endpoints/get__account_preferences"},{"title":"Get public sign-in configuration","deprecated":null,"version":null,"sidebarTitle":"Get public sign-in configuration","playground":"interactive","openapi":"/openapi/itoflow-public.openapi.json get /auth/client-config","href":"/api-reference/endpoints/getauthclientconfig"},{"title":"Get authenticated user","deprecated":null,"version":null,"sidebarTitle":"Get authenticated user","playground":"interactive","openapi":"/openapi/itoflow-public.openapi.json get /auth/user","href":"/api-reference/endpoints/getauthuser"},{"title":"Get the current user Codex subscription connection","deprecated":null,"version":null,"sidebarTitle":"Get the current user Codex subscription connection","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /codex-subscription","href":"/api-reference/endpoints/get__codex_subscription"},{"title":"Disconnect the subscription and revoke it at the provider","deprecated":null,"version":null,"sidebarTitle":"Disconnect the subscription and revoke it at the provider","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /codex-subscription","href":"/api-reference/endpoints/delete__codex_subscription"},{"title":"Check whether the user has approved the device authorization","deprecated":null,"version":null,"sidebarTitle":"Check whether the user has approved the device authorization","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /codex-subscription/poll","href":"/api-reference/endpoints/post__codex_subscription_poll"},{"title":"Start a device authorization the user approves in a browser","deprecated":null,"version":null,"sidebarTitle":"Start a device authorization the user approves in a browser","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /codex-subscription/start","href":"/api-reference/endpoints/post__codex_subscription_start"}]},{"group":"Sharing and data","pages":[{"title":"Create or reuse a shareable artifact","deprecated":null,"version":null,"sidebarTitle":"Create or reuse a shareable artifact","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /artifacts","href":"/api-reference/endpoints/post__artifacts"},{"title":"Archive a shareable artifact","deprecated":null,"version":null,"sidebarTitle":"Archive a shareable artifact","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /artifacts/{slug}","href":"/api-reference/endpoints/delete__artifacts_slug_"},{"title":"Read a public artifact","deprecated":null,"version":null,"sidebarTitle":"Read a public artifact","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /artifacts/public/{slug}","href":"/api-reference/endpoints/get__artifacts_public_slug_"},{"title":"Read a public artifact dataframe snapshot","deprecated":null,"version":null,"sidebarTitle":"Read a public artifact dataframe snapshot","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /artifacts/public/{slug}/dataframes/{dfId}","href":"/api-reference/endpoints/get__artifacts_public_slug_dataframes_dfid_"}]},{"group":"Market data","pages":[{"title":"List benchmark index prices to compare performance","deprecated":null,"version":null,"sidebarTitle":"List benchmark index prices to compare performance","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /benchmarks","href":"/api-reference/endpoints/get__benchmarks"},{"title":"Compute a point-in-time factor risk covariance matrix","deprecated":null,"version":null,"sidebarTitle":"Compute a point-in-time factor risk covariance matrix","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /factor-risk/covariance","href":"/api-reference/endpoints/post__factor_risk_covariance"},{"title":"Get the exchange rate between two currencies","deprecated":null,"version":null,"sidebarTitle":"Get the exchange rate between two currencies","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /fx-rate","href":"/api-reference/endpoints/get__fx_rate"},{"title":"Get current exchange rates for all supported currencies","deprecated":null,"version":null,"sidebarTitle":"Get current exchange rates for all supported currencies","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /fx-rates","href":"/api-reference/endpoints/get__fx_rates"},{"title":"Get anonymous strategy leaderboard","deprecated":null,"version":null,"sidebarTitle":"Get anonymous strategy leaderboard","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /leaderboard","href":"/api-reference/endpoints/get__leaderboard"},{"title":"Search stored news by query, symbol or monitor","deprecated":null,"version":null,"sidebarTitle":"Search stored news by query, symbol or monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /news","href":"/api-reference/endpoints/get__news"},{"title":"Get latest analytics for a list of symbols","deprecated":null,"version":null,"sidebarTitle":"Get latest analytics for a list of symbols","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /symbols/analytics","href":"/api-reference/endpoints/get__symbols_analytics"},{"title":"Get latest symbol baseline cards","deprecated":null,"version":null,"sidebarTitle":"Get latest symbol baseline cards","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /symbols/baseline","href":"/api-reference/endpoints/get__symbols_baseline"},{"title":"Get symbol cache status","deprecated":null,"version":null,"sidebarTitle":"Get symbol cache status","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /symbols/cache-status","href":"/api-reference/endpoints/get__symbols_cache_status"},{"title":"List symbol exchanges","deprecated":null,"version":null,"sidebarTitle":"List symbol exchanges","playground":"interactive","openapi":"/openapi/itoflow-public.openapi.json get /symbols/exchanges","href":"/api-reference/endpoints/getsymbolsexchanges"},{"title":"Get cached live quotes for symbols","deprecated":null,"version":null,"sidebarTitle":"Get cached live quotes for symbols","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /symbols/quotes","href":"/api-reference/endpoints/post__symbols_quotes"},{"title":"Resolve canonical instrument identifiers","description":"Resolve an instrument identifier for portfolio import. This canonical symbol lookup accepts Itoflow symbol, ticker, broker symbol, ISIN, Itoflow exchange code, ISO 10383 MIC, and currency evidence. Conflicting, incomplete or unsupported evidence is rejected rather than guessed.\n\nOperation ID: getSymbolsResolve.","deprecated":null,"version":null,"sidebarTitle":"Resolve canonical instrument identifiers","playground":"interactive","openapi":"/openapi/itoflow-public.openapi.json get /symbols/resolve","href":"/api-reference/endpoints/getsymbolsresolve"},{"title":"Resolve canonical instrument identifiers in bulk","deprecated":null,"version":null,"sidebarTitle":"Resolve canonical instrument identifiers in bulk","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /symbols/resolve/batch","href":"/api-reference/endpoints/post__symbols_resolve_batch"},{"title":"Search or resolve symbols","description":"Search symbols by ticker/company with fuzzy matching, or resolve one fully qualified SYMBOL.EXCHANGE with mode=exact.\n\nOperation ID: getSymbolsSearch.","deprecated":null,"version":null,"sidebarTitle":"Search or resolve symbols","playground":"interactive","openapi":"/openapi/itoflow-public.openapi.json get /symbols/search","href":"/api-reference/endpoints/getsymbolssearch"}]},{"group":"Brokers","pages":[{"title":"Disconnect broker","deprecated":null,"version":null,"sidebarTitle":"Disconnect broker","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /brokers/{connectionId}","href":"/api-reference/endpoints/delete__brokers_connectionid_"},{"title":"Get broker holdings","deprecated":null,"version":null,"sidebarTitle":"Get broker holdings","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /brokers/{connectionId}/holdings","href":"/api-reference/endpoints/get__brokers_connectionid_holdings"},{"title":"Get broker margins","deprecated":null,"version":null,"sidebarTitle":"Get broker margins","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /brokers/{connectionId}/margins","href":"/api-reference/endpoints/get__brokers_connectionid_margins"},{"title":"Reconnect broker connection","deprecated":null,"version":null,"sidebarTitle":"Reconnect broker connection","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /brokers/{connectionId}/reconnect","href":"/api-reference/endpoints/post__brokers_connectionid_reconnect"},{"title":"Get broker connection status","deprecated":null,"version":null,"sidebarTitle":"Get broker connection status","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /brokers/{connectionId}/status","href":"/api-reference/endpoints/get__brokers_connectionid_status"},{"title":"Reconnect Trading 212 with supplied credentials","deprecated":null,"version":null,"sidebarTitle":"Reconnect Trading 212 with supplied credentials","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /brokers/{connectionId}/trading212/reconnect","href":"/api-reference/endpoints/post__brokers_connectionid_trading212_reconnect"},{"title":"Reconnect Trading 212 with stored credentials","deprecated":null,"version":null,"sidebarTitle":"Reconnect Trading 212 with stored credentials","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /brokers/{connectionId}/trading212/reconnect-stored","href":"/api-reference/endpoints/post__brokers_connectionid_trading212_reconnect_stored"},{"title":"Start broker connection","deprecated":null,"version":null,"sidebarTitle":"Start broker connection","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /brokers/connect","href":"/api-reference/endpoints/post__brokers_connect"},{"title":"List broker connections","deprecated":null,"version":null,"sidebarTitle":"List broker connections","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /brokers/connections","href":"/api-reference/endpoints/get__brokers_connections"},{"title":"Connect Trading 212 manually","deprecated":null,"version":null,"sidebarTitle":"Connect Trading 212 manually","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /brokers/trading212/connect-manual","href":"/api-reference/endpoints/post__brokers_trading212_connect_manual"}]},{"group":"Chat","pages":[{"title":"Permanently delete a chat","deprecated":null,"version":null,"sidebarTitle":"Permanently delete a chat","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /chat-runtime/chats/{chatId}","href":"/api-reference/endpoints/chat_delete"},{"title":"Download a file a chat saved in its workspace","deprecated":null,"version":null,"sidebarTitle":"Download a file a chat saved in its workspace","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat-runtime/chats/{chatId}/downloads/workspace/{relativePath}","href":"/api-reference/endpoints/downloadchatworkspacefile"},{"title":"List files a chat saved in its workspace","deprecated":null,"version":null,"sidebarTitle":"List files a chat saved in its workspace","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat-runtime/chats/{chatId}/workspace","href":"/api-reference/endpoints/listchatworkspacedirectory"},{"title":"Create or reuse a public chat share","deprecated":null,"version":null,"sidebarTitle":"Create or reuse a public chat share","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /chat-shares","href":"/api-reference/endpoints/post__chat_shares"},{"title":"Read a public chat share","deprecated":null,"version":null,"sidebarTitle":"Read a public chat share","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat-shares/public/{slug}","href":"/api-reference/endpoints/get__chat_shares_public_slug_"},{"title":"Read a public chat share dataframe snapshot","deprecated":null,"version":null,"sidebarTitle":"Read a public chat share dataframe snapshot","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat-shares/public/{slug}/dataframes/{dfId}","href":"/api-reference/endpoints/get__chat_shares_public_slug_dataframes_dfid_"},{"title":"Read a public chat share plot snapshot","deprecated":null,"version":null,"sidebarTitle":"Read a public chat share plot snapshot","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat-shares/public/{slug}/plots/{plotId}","href":"/api-reference/endpoints/get__chat_shares_public_slug_plots_plotid_"},{"title":"Refresh a public chat share viewing token","deprecated":null,"version":null,"sidebarTitle":"Refresh a public chat share viewing token","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat-shares/public/{slug}/runtime-token","href":"/api-reference/endpoints/get__chat_shares_public_slug_runtime_token"},{"title":"Get chat","deprecated":null,"version":null,"sidebarTitle":"Get chat","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat/{id}","href":"/api-reference/endpoints/get__chat_id_"},{"title":"Get chat events","deprecated":null,"version":null,"sidebarTitle":"Get chat events","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat/{id}/events","href":"/api-reference/endpoints/get__chat_id_events"},{"title":"Sync chat state","deprecated":null,"version":null,"sidebarTitle":"Sync chat state","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chat/{id}/sync","href":"/api-reference/endpoints/get__chat_id_sync"},{"title":"List chats","deprecated":null,"version":null,"sidebarTitle":"List chats","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /chats","href":"/api-reference/endpoints/get__chats"},{"title":"Get dataframe data","deprecated":null,"version":null,"sidebarTitle":"Get dataframe data","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /dataframes/{chatId}/{dfName}","href":"/api-reference/endpoints/get__dataframes_chatid_dfname_"}]},{"group":"GitHub","pages":[{"title":"Availability","deprecated":null,"version":null,"sidebarTitle":"Availability","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /integrations/github/availability","href":"/api-reference/endpoints/githubavailability"},{"title":"Connect","deprecated":null,"version":null,"sidebarTitle":"Connect","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/github/connect","href":"/api-reference/endpoints/github_connect"},{"title":"Disconnect","deprecated":null,"version":null,"sidebarTitle":"Disconnect","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/github/disconnect","href":"/api-reference/endpoints/github_disconnect"},{"title":"Get Connection","deprecated":null,"version":null,"sidebarTitle":"Get Connection","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/github/getConnection","href":"/api-reference/endpoints/github_getconnection"},{"title":"List Repositories","deprecated":null,"version":null,"sidebarTitle":"List Repositories","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/github/listRepositories","href":"/api-reference/endpoints/github_listrepositories"}]},{"group":"Connected MCP servers","pages":[{"title":"Add","deprecated":null,"version":null,"sidebarTitle":"Add","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/add","href":"/api-reference/endpoints/remotemcp_add"},{"title":"Availability","deprecated":null,"version":null,"sidebarTitle":"Availability","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /integrations/remote-mcp/availability","href":"/api-reference/endpoints/remotemcpavailability"},{"title":"Connect","deprecated":null,"version":null,"sidebarTitle":"Connect","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/connect","href":"/api-reference/endpoints/remotemcp_connect"},{"title":"Disconnect","deprecated":null,"version":null,"sidebarTitle":"Disconnect","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/disconnect","href":"/api-reference/endpoints/remotemcp_disconnect"},{"title":"Get Status","deprecated":null,"version":null,"sidebarTitle":"Get Status","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/getStatus","href":"/api-reference/endpoints/remotemcp_getstatus"},{"title":"List","deprecated":null,"version":null,"sidebarTitle":"List","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/list","href":"/api-reference/endpoints/remotemcp_list"},{"title":"List Tools","deprecated":null,"version":null,"sidebarTitle":"List Tools","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/listTools","href":"/api-reference/endpoints/remotemcp_listtools"},{"title":"Remove","deprecated":null,"version":null,"sidebarTitle":"Remove","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/remove","href":"/api-reference/endpoints/remotemcp_remove"},{"title":"Rename","deprecated":null,"version":null,"sidebarTitle":"Rename","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /integrations/remote-mcp/rename","href":"/api-reference/endpoints/remotemcp_rename"}]},{"group":"Notifications","pages":[{"title":"List notification logs","deprecated":null,"version":null,"sidebarTitle":"List notification logs","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /notifications/logs","href":"/api-reference/endpoints/get__notifications_logs"},{"title":"Get notification preferences","deprecated":null,"version":null,"sidebarTitle":"Get notification preferences","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /notifications/preferences","href":"/api-reference/endpoints/get__notifications_preferences"},{"title":"Update notification preferences","deprecated":null,"version":null,"sidebarTitle":"Update notification preferences","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json put /notifications/preferences","href":"/api-reference/endpoints/put__notifications_preferences"},{"title":"Unsubscribe notification recipient","deprecated":null,"version":null,"sidebarTitle":"Unsubscribe notification recipient","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /notifications/unsubscribe","href":"/api-reference/endpoints/post__notifications_unsubscribe"}]},{"group":"Strategies","pages":[{"title":"Get strategy approvals history","deprecated":null,"version":null,"sidebarTitle":"Get strategy approvals history","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /paper-trading/{strategyId}/approvals","href":"/api-reference/endpoints/get__paper_trading_strategyid_approvals"},{"title":"Get strategy decision history","deprecated":null,"version":null,"sidebarTitle":"Get strategy decision history","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /paper-trading/{strategyId}/decisions","href":"/api-reference/endpoints/get__paper_trading_strategyid_decisions"},{"title":"Get strategy pending trades","deprecated":null,"version":null,"sidebarTitle":"Get strategy pending trades","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /paper-trading/{strategyId}/pending-trades","href":"/api-reference/endpoints/get__paper_trading_strategyid_pending_trades"},{"title":"Get strategy performance snapshot","deprecated":null,"version":null,"sidebarTitle":"Get strategy performance snapshot","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /paper-trading/{strategyId}/status","href":"/api-reference/endpoints/get__paper_trading_strategyid_status"},{"title":"Get strategy trade history","deprecated":null,"version":null,"sidebarTitle":"Get strategy trade history","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /paper-trading/{strategyId}/trades","href":"/api-reference/endpoints/get__paper_trading_strategyid_trades"},{"title":"Get paper trading portfolio summaries","deprecated":null,"version":null,"sidebarTitle":"Get paper trading portfolio summaries","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /paper-trading/summaries","href":"/api-reference/endpoints/get__paper_trading_summaries"},{"title":"Assign strategy to portfolio","deprecated":null,"version":null,"sidebarTitle":"Assign strategy to portfolio","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json put /portfolios/{id}/link","href":"/api-reference/endpoints/put__portfolios_id_link"},{"title":"Remove strategy from portfolio","deprecated":null,"version":null,"sidebarTitle":"Remove strategy from portfolio","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /portfolios/{id}/link","href":"/api-reference/endpoints/delete__portfolios_id_link"},{"title":"List strategies visible to user","deprecated":null,"version":null,"sidebarTitle":"List strategies visible to user","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies","href":"/api-reference/endpoints/get__strategies"},{"title":"Create a paper strategy","deprecated":null,"version":null,"sidebarTitle":"Create a paper strategy","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /strategies","href":"/api-reference/endpoints/post__strategies"},{"title":"Get strategy detail","deprecated":null,"version":null,"sidebarTitle":"Get strategy detail","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/{id}","href":"/api-reference/endpoints/get__strategies_id_"},{"title":"Update a strategy","deprecated":null,"version":null,"sidebarTitle":"Update a strategy","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json put /strategies/{id}","href":"/api-reference/endpoints/put__strategies_id_"},{"title":"Get the strategy run in progress","deprecated":null,"version":null,"sidebarTitle":"Get the strategy run in progress","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/{id}/active-execution","href":"/api-reference/endpoints/get__strategies_id_active_execution"},{"title":"Control strategy execution","deprecated":null,"version":null,"sidebarTitle":"Control strategy execution","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /strategies/{id}/control","href":"/api-reference/endpoints/post__strategies_id_control"},{"title":"Get strategy decision events","deprecated":null,"version":null,"sidebarTitle":"Get strategy decision events","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/{id}/decisions/{decisionId}/events","href":"/api-reference/endpoints/get__strategies_id_decisions_decisionid_events"},{"title":"Queue a manual strategy execution","deprecated":null,"version":null,"sidebarTitle":"Queue a manual strategy execution","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /strategies/{id}/execute","href":"/api-reference/endpoints/post__strategies_id_execute"},{"title":"List strategy executions","deprecated":null,"version":null,"sidebarTitle":"List strategy executions","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/{id}/executions","href":"/api-reference/endpoints/get__strategies_id_executions"},{"title":"Get strategy execution events","deprecated":null,"version":null,"sidebarTitle":"Get strategy execution events","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/{id}/executions/{executionId}/events","href":"/api-reference/endpoints/get__strategies_id_executions_executionid_events"},{"title":"Stream strategy execution events","deprecated":null,"version":null,"sidebarTitle":"Stream strategy execution events","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/{id}/stream/{executionId}","href":"/api-reference/endpoints/get__strategies_id_stream_executionid_"},{"title":"List strategies that can go live at a broker","deprecated":null,"version":null,"sidebarTitle":"List strategies that can go live at a broker","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/eligible","href":"/api-reference/endpoints/get__strategies_eligible"},{"title":"Create a live-linked strategy","deprecated":null,"version":null,"sidebarTitle":"Create a live-linked strategy","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /strategies/live","href":"/api-reference/endpoints/post__strategies_live"},{"title":"List public strategy showcase","deprecated":null,"version":null,"sidebarTitle":"List public strategy showcase","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /strategies/public","href":"/api-reference/endpoints/get__strategies_public"}]},{"group":"Portfolios","pages":[{"title":"List user portfolios","deprecated":null,"version":null,"sidebarTitle":"List user portfolios","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios","href":"/api-reference/endpoints/get__portfolios"},{"title":"Create portfolio","deprecated":null,"version":null,"sidebarTitle":"Create portfolio","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios","href":"/api-reference/endpoints/post__portfolios"},{"title":"Get portfolio detail","deprecated":null,"version":null,"sidebarTitle":"Get portfolio detail","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}","href":"/api-reference/endpoints/get__portfolios_id_"},{"title":"Delete portfolio","deprecated":null,"version":null,"sidebarTitle":"Delete portfolio","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /portfolios/{id}","href":"/api-reference/endpoints/delete__portfolios_id_"},{"title":"Update portfolio auto-execute","deprecated":null,"version":null,"sidebarTitle":"Update portfolio auto-execute","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json patch /portfolios/{id}/auto-execute","href":"/api-reference/endpoints/patch__portfolios_id_auto_execute"},{"title":"Set portfolio benchmark comparison basis","deprecated":null,"version":null,"sidebarTitle":"Set portfolio benchmark comparison basis","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json put /portfolios/{id}/benchmark","href":"/api-reference/endpoints/put__portfolios_id_benchmark"},{"title":"Get broker validation status","deprecated":null,"version":null,"sidebarTitle":"Get broker validation status","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/broker-status","href":"/api-reference/endpoints/get__portfolios_id_broker_status"},{"title":"Get AI trading decisions","deprecated":null,"version":null,"sidebarTitle":"Get AI trading decisions","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/decisions","href":"/api-reference/endpoints/get__portfolios_id_decisions"},{"title":"Convert portfolio to paper mode","deprecated":null,"version":null,"sidebarTitle":"Convert portfolio to paper mode","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/{id}/go-paper","href":"/api-reference/endpoints/post__portfolios_id_go_paper"},{"title":"Get historical holdings snapshot","deprecated":null,"version":null,"sidebarTitle":"Get historical holdings snapshot","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/holdings/history","href":"/api-reference/endpoints/get__portfolios_id_holdings_history"},{"title":"Liquidate portfolio","deprecated":null,"version":null,"sidebarTitle":"Liquidate portfolio","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/{id}/liquidate","href":"/api-reference/endpoints/post__portfolios_id_liquidate"},{"title":"List pending trades","deprecated":null,"version":null,"sidebarTitle":"List pending trades","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/pending-trades","href":"/api-reference/endpoints/get__portfolios_id_pending_trades"},{"title":"Cancel pending trades","deprecated":null,"version":null,"sidebarTitle":"Cancel pending trades","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /portfolios/{id}/pending-trades","href":"/api-reference/endpoints/delete__portfolios_id_pending_trades"},{"title":"Approve pending trades","deprecated":null,"version":null,"sidebarTitle":"Approve pending trades","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/{id}/pending-trades/approve","href":"/api-reference/endpoints/post__portfolios_id_pending_trades_approve"},{"title":"Get portfolio performance history","deprecated":null,"version":null,"sidebarTitle":"Get portfolio performance history","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/performance","href":"/api-reference/endpoints/get__portfolios_id_performance"},{"title":"Reconcile live portfolio","deprecated":null,"version":null,"sidebarTitle":"Reconcile live portfolio","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/{id}/reconcile","href":"/api-reference/endpoints/post__portfolios_id_reconcile"},{"title":"Sync live portfolio state","deprecated":null,"version":null,"sidebarTitle":"Sync live portfolio state","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/{id}/sync-live-state","href":"/api-reference/endpoints/post__portfolios_id_sync_live_state"},{"title":"Get trade history","deprecated":null,"version":null,"sidebarTitle":"Get trade history","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/trades","href":"/api-reference/endpoints/get__portfolios_id_trades"},{"title":"Get trade execution attempts","deprecated":null,"version":null,"sidebarTitle":"Get trade execution attempts","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/{id}/trades/{tradeId}/attempts","href":"/api-reference/endpoints/get__portfolios_id_trades_tradeid_attempts"},{"title":"List pending approval summaries","deprecated":null,"version":null,"sidebarTitle":"List pending approval summaries","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /portfolios/approvals/pending","href":"/api-reference/endpoints/get__portfolios_approvals_pending"},{"title":"Commit an approved paper portfolio import","deprecated":null,"version":null,"sidebarTitle":"Commit an approved paper portfolio import","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/import","href":"/api-reference/endpoints/post__portfolios_import"},{"title":"Validate uploaded paper portfolio import","deprecated":null,"version":null,"sidebarTitle":"Validate uploaded paper portfolio import","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /portfolios/import/validate","href":"/api-reference/endpoints/post__portfolios_import_validate"},{"title":"Get portfolio transition status","deprecated":null,"version":null,"sidebarTitle":"Get portfolio transition status","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /transition/{taskId}","href":"/api-reference/endpoints/get__transition_taskid_"}]},{"group":"Billing","pages":[{"title":"Create billing portal session","deprecated":null,"version":null,"sidebarTitle":"Create billing portal session","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/billing-portal","href":"/api-reference/endpoints/post__pricing_billing_portal"},{"title":"Get billing summary","deprecated":null,"version":null,"sidebarTitle":"Get billing summary","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/billing-summary","href":"/api-reference/endpoints/get__pricing_billing_summary"},{"title":"Get current public plan prices, usage allowances and model access","deprecated":null,"version":null,"sidebarTitle":"Get current public plan prices, usage allowances and model access","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/catalog","href":"/api-reference/endpoints/get__pricing_catalog"},{"title":"Get pricing configuration","deprecated":null,"version":null,"sidebarTitle":"Get pricing configuration","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/config","href":"/api-reference/endpoints/get__pricing_config"},{"title":"Confirm payment","deprecated":null,"version":null,"sidebarTitle":"Confirm payment","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/confirm-payment","href":"/api-reference/endpoints/post__pricing_confirm_payment"},{"title":"List credit tiers","deprecated":null,"version":null,"sidebarTitle":"List credit tiers","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/credit-tiers","href":"/api-reference/endpoints/get__pricing_credit_tiers"},{"title":"Get customer balance","deprecated":null,"version":null,"sidebarTitle":"Get customer balance","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/customer-balance","href":"/api-reference/endpoints/get__pricing_customer_balance"},{"title":"Get pricing plans","deprecated":null,"version":null,"sidebarTitle":"Get pricing plans","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/get-plans","href":"/api-reference/endpoints/post__pricing_get_plans"},{"title":"Get subscription","deprecated":null,"version":null,"sidebarTitle":"Get subscription","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/get-subscription","href":"/api-reference/endpoints/post__pricing_get_subscription"},{"title":"List invoices","deprecated":null,"version":null,"sidebarTitle":"List invoices","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/invoices","href":"/api-reference/endpoints/get__pricing_invoices"},{"title":"Get configured agent models and current model access","deprecated":null,"version":null,"sidebarTitle":"Get configured agent models and current model access","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/model-access","href":"/api-reference/endpoints/get__pricing_model_access"},{"title":"List payment methods","deprecated":null,"version":null,"sidebarTitle":"List payment methods","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /pricing/payment-methods","href":"/api-reference/endpoints/get__pricing_payment_methods"},{"title":"Delete payment method","deprecated":null,"version":null,"sidebarTitle":"Delete payment method","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /pricing/payment-methods/{paymentMethodId}","href":"/api-reference/endpoints/delete__pricing_payment_methods_paymentmethodid_"},{"title":"Set default payment method","deprecated":null,"version":null,"sidebarTitle":"Set default payment method","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/payment-methods/default","href":"/api-reference/endpoints/post__pricing_payment_methods_default"},{"title":"Create payment method setup intent","deprecated":null,"version":null,"sidebarTitle":"Create payment method setup intent","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/payment-methods/setup-intent","href":"/api-reference/endpoints/post__pricing_payment_methods_setup_intent"},{"title":"Preview subscription upgrade","deprecated":null,"version":null,"sidebarTitle":"Preview subscription upgrade","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/preview-upgrade","href":"/api-reference/endpoints/post__pricing_preview_upgrade"},{"title":"Refund customer balance","deprecated":null,"version":null,"sidebarTitle":"Refund customer balance","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/refund-balance","href":"/api-reference/endpoints/post__pricing_refund_balance"},{"title":"Set spending cap","deprecated":null,"version":null,"sidebarTitle":"Set spending cap","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/spending-cap","href":"/api-reference/endpoints/post__pricing_spending_cap"},{"title":"Update subscription","deprecated":null,"version":null,"sidebarTitle":"Update subscription","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /pricing/update-subscription","href":"/api-reference/endpoints/post__pricing_update_subscription"}]},{"group":"Risk runs","pages":[{"title":"Measure","deprecated":null,"version":null,"sidebarTitle":"Measure","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /risk/measure","href":"/api-reference/endpoints/startriskmeasure"},{"title":"Read a risk measure","deprecated":null,"version":null,"sidebarTitle":"Read a risk measure","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /risk/measure/{measure_id}","href":"/api-reference/endpoints/getriskmeasure"},{"title":"Stop a risk measure","deprecated":null,"version":null,"sidebarTitle":"Stop a risk measure","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /risk/measure/{measure_id}/cancel","href":"/api-reference/endpoints/cancelriskmeasure"},{"title":"Runs","deprecated":null,"version":null,"sidebarTitle":"Runs","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /risk/runs","href":"/api-reference/endpoints/startriskrun"},{"title":"Read a risk run","deprecated":null,"version":null,"sidebarTitle":"Read a risk run","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /risk/runs/{run_id}","href":"/api-reference/endpoints/getriskrun"},{"title":"Read the full risk run output","deprecated":null,"version":null,"sidebarTitle":"Read the full risk run output","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /risk/runs/{run_id}/artifact","href":"/api-reference/endpoints/getriskrunartifact"},{"title":"Stop a risk run","deprecated":null,"version":null,"sidebarTitle":"Stop a risk run","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /risk/runs/{run_id}/cancel","href":"/api-reference/endpoints/cancelriskrun"}]},{"group":"Monitors","pages":[{"title":"List monitors","deprecated":null,"version":null,"sidebarTitle":"List monitors","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists","href":"/api-reference/endpoints/get__watchlists"},{"title":"Create monitor","deprecated":null,"version":null,"sidebarTitle":"Create monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /watchlists","href":"/api-reference/endpoints/post__watchlists"},{"title":"Get monitor","deprecated":null,"version":null,"sidebarTitle":"Get monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}","href":"/api-reference/endpoints/get__watchlists_id_"},{"title":"Update monitor","deprecated":null,"version":null,"sidebarTitle":"Update monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json put /watchlists/{id}","href":"/api-reference/endpoints/put__watchlists_id_"},{"title":"Delete monitor","deprecated":null,"version":null,"sidebarTitle":"Delete monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json delete /watchlists/{id}","href":"/api-reference/endpoints/delete__watchlists_id_"},{"title":"Get the Monitor run in progress","deprecated":null,"version":null,"sidebarTitle":"Get the Monitor run in progress","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/active-execution","href":"/api-reference/endpoints/get__watchlists_id_active_execution"},{"title":"Get latest monitor analytics snapshot","deprecated":null,"version":null,"sidebarTitle":"Get latest monitor analytics snapshot","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/analytics/latest","href":"/api-reference/endpoints/get__watchlists_id_analytics_latest"},{"title":"Control monitor agent","deprecated":null,"version":null,"sidebarTitle":"Control monitor agent","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /watchlists/{id}/control","href":"/api-reference/endpoints/post__watchlists_id_control"},{"title":"Get the results a Monitor run has shown so far","deprecated":null,"version":null,"sidebarTitle":"Get the results a Monitor run has shown so far","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/executions/{executionId}/results","href":"/api-reference/endpoints/get__watchlists_id_executions_executionid_results"},{"title":"Fork a readable monitor","deprecated":null,"version":null,"sidebarTitle":"Fork a readable monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /watchlists/{id}/fork","href":"/api-reference/endpoints/post__watchlists_id_fork"},{"title":"Read news for a monitor","deprecated":null,"version":null,"sidebarTitle":"Read news for a monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/news","href":"/api-reference/endpoints/getmonitornews"},{"title":"Fetch news for a monitor","deprecated":null,"version":null,"sidebarTitle":"Fetch news for a monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /watchlists/{id}/news/fetch","href":"/api-reference/endpoints/fetchmonitornews"},{"title":"Get cached live quotes for a monitor","deprecated":null,"version":null,"sidebarTitle":"Get cached live quotes for a monitor","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/quotes","href":"/api-reference/endpoints/get__watchlists_id_quotes"},{"title":"List monitor reports","deprecated":null,"version":null,"sidebarTitle":"List monitor reports","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/reports","href":"/api-reference/endpoints/get__watchlists_id_reports"},{"title":"Get monitor report","deprecated":null,"version":null,"sidebarTitle":"Get monitor report","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/reports/{reportId}","href":"/api-reference/endpoints/get__watchlists_id_reports_reportid_"},{"title":"Get the latest completed Monitor report","deprecated":null,"version":null,"sidebarTitle":"Get the latest completed Monitor report","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json get /watchlists/{id}/reports/latest","href":"/api-reference/endpoints/get__watchlists_id_reports_latest"},{"title":"Manually regenerate the current monitor report","deprecated":null,"version":null,"sidebarTitle":"Manually regenerate the current monitor report","playground":"simple","openapi":"/openapi/itoflow-public.openapi.json post /watchlists/{id}/reports/run","href":"/api-reference/endpoints/post__watchlists_id_reports_run"}]}]}]},"basePath":"","title":"Resolve canonical instrument identifiers in bulk - Itoflow developer docs","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","Page-BIYvYBgk.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}