{"id":83603,"date":"2021-05-10T15:05:00","date_gmt":"2021-05-10T19:05:00","guid":{"rendered":"https:\/\/ibkrcampus.com\/?p=83603"},"modified":"2023-03-03T14:35:23","modified_gmt":"2023-03-03T19:35:23","slug":"tutorial-web-api-connect-to-brokerage-session","status":"publish","type":"post","link":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/","title":{"rendered":"Tutorial: Web API \u2013 Connect to Brokerage Session"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1000\" height=\"563\" data-src=\"\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg\" alt=\"Quant\" class=\"wp-image-83607 lazyload\" data-srcset=\"https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg 1000w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip-700x394.jpg 700w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip-300x169.jpg 300w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip-768x432.jpg 768w\" data-sizes=\"(max-width: 1000px) 100vw, 1000px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1000px; aspect-ratio: 1000\/563;\" \/><\/figure>\n\n\n\n<p><strong>What is the Brokerage Session?<\/strong><\/p>\n\n\n\n<p>When authenticating your login session this allows you equivalent access as a read-only user. You can query positions, account details, security definition and portfolio analyst data. <strong>Once authenticated<\/strong>, you can then connect to the brokerage session which provides access to market data, scanners and placing orders. There are two different brokerage sessions offered. We provide brokerage session that allows access to all the \/iserver endpoints, the same way Client Portal and IBKR Mobile authenticates. We provide brokerage session directly to CCP (currently in Beta). This allows access to all the \/ccp endpoints, the same way Trader Workstation authenticates. Interactive Brokers only allows access to one brokerage session at a time. In this topic we\u2019ll describe further how to connect to the \/iserver endpoints. When using the Web API we use an OAuth protected-resource POST request to connect to the brokerage session.<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#a8efb3\"><em>Please be sure to authenticate first in order to resolve the below URLs. <\/em><br><em>For authentication details, visit https:\/\/www.interactivebrokers.com\/en\/trading\/ib-api.php.<\/em><\/p>\n\n\n\n<p><strong>SSODH Init Request<\/strong><\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#e4eee5\">POST&nbsp;&nbsp;https:\/\/api.ibkr.com\/v1\/api\/iserver\/auth\/ssodh\/init<\/p>\n\n\n\n<p>The body, of type x-www-form-urlencoded, must have the following parameters:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>machineId<\/strong>&nbsp;(String) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8 char alphanumberic string e.g. CCCCCC01-99<\/li>\n\n\n\n<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>mac<\/strong>&nbsp;(String)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;six 2-char alphanumerical pairs separated by a hyphen<\/li>\n\n\n\n<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>compete<\/strong>&nbsp;(Boolean)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;whether or not the session should compete, usually set to false<\/li>\n\n\n\n<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>locale<\/strong>&nbsp;(String)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set to \u201cen_US<\/li>\n\n\n\n<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>username&nbsp;<\/strong>(String)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; set to dash \u201c-\u201c<\/li>\n<\/ul>\n\n\n\n<p>If the request is successful, the response will contain a challenge in hex format.<\/p>\n\n\n\n<p>Example:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:14px\" class=\"has-background\"> Request Payload<br>compete=true&amp;locale=en_US&amp;mac=48-DF-37-57-33-80&amp;machineId=CCCCCC62&amp;username=-<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:14px\" class=\"has-background\"> \nResponse Payload<br>\nchallenge &#8220;c0af5b21fec49f5e08fc7fd82fbe11b7422f499b&#8221;\n<\/p>\n\n\n\n<p><strong>Challenge and Response<\/strong><\/p>\n\n\n\n<p>The challenge is needed to calculate the challenge response, or R whereby seed = challenge, verifier = st.<\/p>\n\n\n\n<p>To calculate R, ensure both the challenge and session token calculated during initial authentication are in hex form. Then, concatenate the challenge and session tokens, with the challenge being in front.<\/p>\n\n\n\n<p>Method for calculating R:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:14px\" class=\"has-background\"> \nexport function compute_sk(seed, verifier) {<br>\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const hash = crypto.createHash(&#8216;sha1&#8217;);<br>\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hash.update(Buffer.from(seed + verifier, &#8216;hex&#8217;));<br>\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return hash.digest(&#8216;hex&#8217;);<br>\n\n}\n  \n\n\n<\/p>\n\n\n\n<p><strong>SSODH Response Request<\/strong><\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#e4eee5\">POST&nbsp;&nbsp;https:\/\/api.ibkr.com\/v1\/api\/iserver\/auth\/ssodh\/response<\/p>\n\n\n\n<p>The body only has one parameter, \u201cresponse\u201d, with the value being the response calculated for R above.<\/p>\n\n\n\n<p>If the request is successful, the response will contain a JSON object with the values \u201cpassed\u201d, \u201cauthenticated\u201d and \u201cconnected\u201d being true.<\/p>\n\n\n\n<p>Example:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:14px\" class=\"has-background\"> Request Payload<br>\nresponse=cff337ae870bba404d58d41836e6a8cf7e1a5e86\n<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:14px\" class=\"has-background\"> Response Payload<br>{&#8220;passed&#8221;:true,&#8221;authenticated&#8221;:true,&#8221;connected&#8221;:true,&#8221;competing&#8221;:false}<\/p>\n\n\n\n<p><strong>How do I connect to Brokerage Session when using the Gateway?<\/strong><\/p>\n\n\n\n<p>When running the headless gateway you would manually login via URL. Then send the endpoint:<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#e4eee5\">GET&nbsp;&nbsp;https:\/\/localhost:5000\/v1\/api\/iserver\/accounts&nbsp;<\/p>\n\n\n\n<p>The gateway will automatically send the SSODH Init and SSODH Response for you. If you receive account information back this confirms you are connected.<\/p>\n\n\n\n<p>At any time you can check the status of the brokerage session by sending the endpoint:<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#e4eee5\">GET&nbsp;&nbsp;https:\/\/localhost:5000\/v1\/api\/iserver\/auth\/status<\/p>\n\n\n\n<p>If authentication returns false you can try to reauthenticate by sending the endpoints:<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#e4eee5\">GET&nbsp;&nbsp;https:\/\/localhost:5000\/v1\/api\/sso\/validate&nbsp;and POST&nbsp;&nbsp;https:\/\/localhost:5000\/v1\/api\/iserver\/reauthenticate<\/p>\n\n\n\n<p>If you have any further questions or issues connecting to the brokerage session please reach-out to the API Group at&nbsp;<a href=\"mailto:api@interactivebrokers.com\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><a href=\"https:\/\/www.interactivebrokers.com\/en\/index.php?f=47047\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.interactivebrokers.com\/en\/index.php?f=47047<\/a>.<\/p>\n\n\n\n<p><em>Visit the IBKR API Center for Downloads, Resources, and Technical Details<\/em>:<br><em><a href=\"https:\/\/www.interactivebrokers.com\/en\/trading\/ib-api.php\">https:\/\/www.interactivebrokers.com\/en\/trading\/ib-api.php<\/a><\/em>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.<\/p>\n","protected":false},"author":614,"featured_media":83607,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[340,343,338,341,352,344,9763],"tags":[851,9553,9555,9558,865,9554,9556,9557,9552],"contributors-categories":[13576],"class_list":{"0":"post-83603","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-api-development","8":"category-programing-languages","9":"category-ibkr-quant-news","10":"category-quant-development","11":"category-quant-north-america","12":"category-quant-regions","13":"category-rest-development","14":"tag-algo-trading","15":"tag-brokerage-session","16":"tag-client-portal","17":"tag-connect-to-brokerage-session-when-using-the-gateway","18":"tag-github","19":"tag-oauth","20":"tag-ssodh-init-request","21":"tag-ssodh-response-request","22":"tag-web-api","23":"contributors-categories-interactive-brokers"},"pp_statuses_selecting_workflow":false,"pp_workflow_action":"current","pp_status_selection":"publish","acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Tutorial: Web API \u2013 Connect to Brokerage Session<\/title>\n<meta name=\"description\" content=\"This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/83603\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial: Web API \u2013 Connect to Brokerage Session | IBKR Quant Blog\" \/>\n<meta property=\"og:description\" content=\"This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/\" \/>\n<meta property=\"og:site_name\" content=\"IBKR Campus US\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-10T19:05:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-03T19:35:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"563\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"IBKR API\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"IBKR API\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\n\t    \"@context\": \"https:\\\/\\\/schema.org\",\n\t    \"@graph\": [\n\t        {\n\t            \"@type\": \"NewsArticle\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/#article\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/\"\n\t            },\n\t            \"author\": {\n\t                \"name\": \"IBKR API\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/a70292c923c6262ec34ebe59e937f0cc\"\n\t            },\n\t            \"headline\": \"Tutorial: Web API \u2013 Connect to Brokerage Session\",\n\t            \"datePublished\": \"2021-05-10T19:05:00+00:00\",\n\t            \"dateModified\": \"2023-03-03T19:35:23+00:00\",\n\t            \"mainEntityOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/\"\n\t            },\n\t            \"wordCount\": 744,\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2021\\\/04\\\/api-tech-chip.jpg\",\n\t            \"keywords\": [\n\t                \"Algo Trading\",\n\t                \"Brokerage Session\",\n\t                \"Client Portal\",\n\t                \"Connect to Brokerage Session when using the Gateway\",\n\t                \"GitHub\",\n\t                \"OAuth\",\n\t                \"SSODH Init Request\",\n\t                \"SSODH Response Request\",\n\t                \"Web API\"\n\t            ],\n\t            \"articleSection\": [\n\t                \"IBKR API Development\",\n\t                \"Programming Languages\",\n\t                \"Quant\",\n\t                \"Quant Development\",\n\t                \"Quant North America\",\n\t                \"Quant Regions\",\n\t                \"REST Development\"\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"WebPage\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/\",\n\t            \"name\": \"Tutorial: Web API \u2013 Connect to Brokerage Session | IBKR Quant Blog\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\"\n\t            },\n\t            \"primaryImageOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2021\\\/04\\\/api-tech-chip.jpg\",\n\t            \"datePublished\": \"2021-05-10T19:05:00+00:00\",\n\t            \"dateModified\": \"2023-03-03T19:35:23+00:00\",\n\t            \"description\": \"This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"ReadAction\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"ImageObject\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/tutorial-web-api-connect-to-brokerage-session\\\/#primaryimage\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2021\\\/04\\\/api-tech-chip.jpg\",\n\t            \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2021\\\/04\\\/api-tech-chip.jpg\",\n\t            \"width\": 1000,\n\t            \"height\": 563,\n\t            \"caption\": \"Quant\"\n\t        },\n\t        {\n\t            \"@type\": \"WebSite\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"name\": \"IBKR Campus US\",\n\t            \"description\": \"Financial Education from Interactive Brokers\",\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"SearchAction\",\n\t                    \"target\": {\n\t                        \"@type\": \"EntryPoint\",\n\t                        \"urlTemplate\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/?s={search_term_string}\"\n\t                    },\n\t                    \"query-input\": {\n\t                        \"@type\": \"PropertyValueSpecification\",\n\t                        \"valueRequired\": true,\n\t                        \"valueName\": \"search_term_string\"\n\t                    }\n\t                }\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"Organization\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\",\n\t            \"name\": \"Interactive Brokers\",\n\t            \"alternateName\": \"IBKR\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"logo\": {\n\t                \"@type\": \"ImageObject\",\n\t                \"inLanguage\": \"en-US\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\",\n\t                \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"width\": 669,\n\t                \"height\": 669,\n\t                \"caption\": \"Interactive Brokers\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\"\n\t            },\n\t            \"publishingPrinciples\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/about-ibkr-campus\\\/\",\n\t            \"ethicsPolicy\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/cyber-security-notice\\\/\"\n\t        },\n\t        {\n\t            \"@type\": \"Person\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/a70292c923c6262ec34ebe59e937f0cc\",\n\t            \"name\": \"IBKR API\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/author\\\/ibkrapi\\\/\"\n\t        }\n\t    ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Tutorial: Web API \u2013 Connect to Brokerage Session","description":"This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/83603\/","og_locale":"en_US","og_type":"article","og_title":"Tutorial: Web API \u2013 Connect to Brokerage Session | IBKR Quant Blog","og_description":"This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.","og_url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/","og_site_name":"IBKR Campus US","article_published_time":"2021-05-10T19:05:00+00:00","article_modified_time":"2023-03-03T19:35:23+00:00","og_image":[{"width":1000,"height":563,"url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg","type":"image\/jpeg"}],"author":"IBKR API","twitter_card":"summary_large_image","twitter_misc":{"Written by":"IBKR API","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/#article","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/"},"author":{"name":"IBKR API","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/a70292c923c6262ec34ebe59e937f0cc"},"headline":"Tutorial: Web API \u2013 Connect to Brokerage Session","datePublished":"2021-05-10T19:05:00+00:00","dateModified":"2023-03-03T19:35:23+00:00","mainEntityOfPage":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/"},"wordCount":744,"publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg","keywords":["Algo Trading","Brokerage Session","Client Portal","Connect to Brokerage Session when using the Gateway","GitHub","OAuth","SSODH Init Request","SSODH Response Request","Web API"],"articleSection":["IBKR API Development","Programming Languages","Quant","Quant Development","Quant North America","Quant Regions","REST Development"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/","url":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/","name":"Tutorial: Web API \u2013 Connect to Brokerage Session | IBKR Quant Blog","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/#primaryimage"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg","datePublished":"2021-05-10T19:05:00+00:00","dateModified":"2023-03-03T19:35:23+00:00","description":"This IBKR API technical tutorial helps users understand how to connect to a brokerage session and offers practical examples from our GitHub repository.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/tutorial-web-api-connect-to-brokerage-session\/#primaryimage","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg","width":1000,"height":563,"caption":"Quant"},{"@type":"WebSite","@id":"https:\/\/ibkrcampus.com\/campus\/#website","url":"https:\/\/ibkrcampus.com\/campus\/","name":"IBKR Campus US","description":"Financial Education from Interactive Brokers","publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ibkrcampus.com\/campus\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ibkrcampus.com\/campus\/#organization","name":"Interactive Brokers","alternateName":"IBKR","url":"https:\/\/ibkrcampus.com\/campus\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","width":669,"height":669,"caption":"Interactive Brokers"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/"},"publishingPrinciples":"https:\/\/www.interactivebrokers.com\/campus\/about-ibkr-campus\/","ethicsPolicy":"https:\/\/www.interactivebrokers.com\/campus\/cyber-security-notice\/"},{"@type":"Person","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/a70292c923c6262ec34ebe59e937f0cc","name":"IBKR API","url":"https:\/\/www.interactivebrokers.com\/campus\/author\/ibkrapi\/"}]}},"jetpack_featured_media_url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2021\/04\/api-tech-chip.jpg","_links":{"self":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/83603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/users\/614"}],"replies":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/comments?post=83603"}],"version-history":[{"count":0,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/83603\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media\/83607"}],"wp:attachment":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media?parent=83603"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/categories?post=83603"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/tags?post=83603"},{"taxonomy":"contributors-categories","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/contributors-categories?post=83603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}