{"id":211,"date":"2020-07-14T21:30:26","date_gmt":"2020-07-15T01:30:26","guid":{"rendered":"https:\/\/www.tapesong.com\/wordpress\/?p=211"},"modified":"2023-01-24T17:06:14","modified_gmt":"2023-01-24T22:06:14","slug":"okta-bamboohr-the-missing-manager-email","status":"publish","type":"post","link":"https:\/\/starshade.ca\/wordpress\/okta-bamboohr-the-missing-manager-email\/","title":{"rendered":"Okta &#038; BambooHR\u2014The missing manager email"},"content":{"rendered":"\n<p>Okta&#8217;s BambooHR integration by default only provides the first and last names of the user&#8217;s manager\/supervisor, whereas for downstream apps (G Suite, etc.), the manager&#8217;s address is much more useful. It turns out BambooHR has an unpublished field in their API called supervisorEmail, however this field is not an option in the Okta BambooHR schema GUI. The workaround is to use the<strong> Okta<\/strong> API to add the attribute!<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Create admin-level API token (<a href=\"https:\/\/developer.okta.com\/docs\/guides\/create-an-api-token\/create-the-token\/\">https:\/\/developer.okta.com\/docs\/guides\/create-an-api-token\/create-the-token\/<\/a>)<\/li><li>In Okta Admin, go to the BambooHR app, and then grab the instance ID from the URL in the address bar, for example: <code>https:\/\/&lt;YOUR-OKTA-DOMAIN&gt;-admin.okta.com\/admin\/app\/bamboohr\/instance\/&lt;THIS IS YOUR BAMBOOHR INSTANCE ID&gt;\/#tab-general<\/code><\/li><li>Open Terminal and run the code below, replacing <code>&lt;...&gt;<\/code> where necessary.<\/li><li>Now, in Okta Admin, when you check back in the BambooHR profile (Directory-&gt; Profile Editor), you will see Supervisor Email as a custom attribute!<\/li><li>You can now set up your preferred mapping from BambooHR to Okta profiles. A new import may be required if the values don&#8217;t update immediately.<\/li><li>For safety, you could delete the Okta API token once you&#8217;re done.<\/li><\/ol>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;file&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;shell&quot;,&quot;mime&quot;:&quot;text\/x-sh&quot;,&quot;theme&quot;:&quot;neat&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:false,&quot;lineWrapping&quot;:true,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;Shell&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;shell&quot;}\">curl -v -X POST -H &quot;Accept: application\/json&quot; -H &quot;Content-Type: application\/json&quot; -H &quot;Authorization: SSWS &lt;YOUR-OKTA=API-TOKEN&gt;&quot; -d '{ &quot;definitions&quot;: { &quot;custom&quot;: { &quot;id&quot;: &quot;#custom&quot;, &quot;type&quot;: &quot;object&quot;, &quot;properties&quot;: { &quot;supervisorEmail&quot;: { &quot;title&quot;: &quot;Supervisor Email&quot;, &quot;description&quot;: &quot;The email address of this users supervisor&quot;, &quot;externalName&quot;: &quot;supervisorEmail&quot;, &quot;scope&quot;: &quot;NONE&quot;, &quot;type&quot;: &quot;string&quot;, &quot;required&quot;: false } }, &quot;required&quot;: [] } } }' &quot;https:\/\/&lt;YOUR-OKTA-DOMAIN&gt;\/api\/v1\/meta\/schemas\/apps\/&lt;YOUR BAMBOOHR INSTANCE ID&gt;\/default&quot;<\/pre><\/div>\n\n\n\n<p class=\"has-small-font-size\"><em>Thank you to Julian in the comments for pointing out a syntax issue that I&#8217;ve now fixed.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Okta&#8217;s BambooHR integration by default only provides the first and last names of the user&#8217;s manager\/supervisor, whereas for downstream apps (G Suite, etc.), the manager&#8217;s address is much more useful. It turns out BambooHR has an unpublished field in their API called supervisorEmail, however this&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":374,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[48,44],"tags":[79,76,54,77,56,75,86,78],"class_list":["post-211","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-macos-it","category-sso","tag-api","tag-bamboohr","tag-email","tag-manager","tag-offboarding","tag-okta","tag-onboarding","tag-supervisoremail"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/posts\/211","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/comments?post=211"}],"version-history":[{"count":13,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/posts\/211\/revisions"}],"predecessor-version":[{"id":469,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/posts\/211\/revisions\/469"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/media\/374"}],"wp:attachment":[{"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/media?parent=211"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/categories?post=211"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/starshade.ca\/wordpress\/wp-json\/wp\/v2\/tags?post=211"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}