How can we help? 👋

Lever Integration Setup

How to setup Lever and Byteboard integration

About Lever Integration

Byteboard’s integration with Lever allows you to seamlessly add Byteboard to a job’s interview plan (CoreEval and CodeCollab). Below are details on how to set-up the self-service Byteboard and Lever integration.

Before you begin

In order to set up the Lever and Byteboard integration, you will need the following permissions across accounts:

  • Lever: Super Admin
  • Byteboard: Admin

Enabling the Lever and Byteboard integration

To enable the Lever integration, please visit Team Settings at https://client.byteboard.dev/settings/team. You will need to toggle the Lever Integration button to on.

Notion image

1. Create & Upload Your API Keys

To set-up integration, you will need to create two API keys:

  1. Initial Setup key
  1. Permanent API key
 

To start, follow Lever’s API documentation to set up both API keys including the permissions outlined for each API key below.

 
  1. As a Super Admin user in Lever, navigate to Settings > Integrations and API > API Credentials.
  1. Select Generate New Key in the Lever API credentials section to create each of the needed API Keys outlined before
Notion image
🔒
More on Data Permissions: the Setup API Key allows our team to pull information needed for the various parts of the integration to work. For example, list stages allows us to identify what ID is used by Lever to represent the interview stage you use for “Byteboard”. The Permanent API Key allows our team to send interview invites to candidates and update Lever with the candidate’s Byteboard results when they are done.

Initial Setup Key

The Initial Setup Key needs to be created in Lever. To create the API key:

  1. Make sure to include all of the listed READ and WRITE permissions below to ensure correct integration functionality (by clicking the related checkboxes in the endpoints sections):
      • READ Endpoints Permissions
      • WRITE Endpoints Permissions
      Expand here for example screenshot of selecting API Key Permissions
      *Note — not all required permissions for the Setup API Key are displayed in the screenshot above
      *Note — not all required permissions for the Setup API Key are displayed in the screenshot above
 
🛑
Before you fully submit the page to create the Setup API Key, make sure to copy the full Setup API Key (screenshot below) and store it in a safe location on your device. You will need the setup API key for the next step (Step 2). You will not be able to access the full API key again once it’s been created.
Click
Click Copy Key to copy the Setup API Key and store it elsewhere before moving on to the next step

Permanent API Key

  1. Follow the steps outlined above to create the API key
  1. For the Permanent API key, ensure all of the listed READ and WRITE permissions below to ensure correct integration functionality:
      • READ Endpoints Permissions
      • WRITE Endpoints Permissions
      Expand here for example screenshot of selecting API Key Permissions
      *Note — not all required permissions for Permanent API Key are displayed in the screenshot above
      *Note — not all required permissions for Permanent API Key are displayed in the screenshot above
       
      🛑
      Before you fully submit the page to create the Permanent API Key, make sure to copy the full Permanent API Key (screenshot below) and store it in a safe location on your device. You will need to submit the full Permanent API key in your Byteboard portal. You will not be able to access the full API key again once it’s been created.
      Click
      Click Copy Key to copy the Permanent API Key and store it elsewhere before moving on to the next step
 
  1. Once you’ve added all the permissions listed above, click DONE at the bottom of the page to save and create the API Key.
  1. If you would like to give the API Key access to confidential job postings, opportunities, and requisitions in your Lever instance, toggle the Allow access to confidential data. Otherwise, you can leave this toggled off.
Notion image
 
  1. Once API key creation is completed in Lever, add your permanent API key to the team settings page in the Byteboard portal in the permanent key box in Step 1 and click Submit.
Notion image

2. Configure Stage Changes and Archive Reasons

Configure Stage Changes

  1. Click the Stage Changes button on the Byteboard Team Settings page under the Configure Archive Reasons and State Changes heading.
    1. Notion image
  1. Insert your Initial Setup Key, click Submit. You’ll want to keep this API key saved for the Configure Archive Reasons set-up stage.
    1. Notion image
  1. You will bedirected to match your company’s Lever stages to the appropriate Byteboard Stages. Select the Lever Stages that should be mapped to the stages listed below and once an option is selected for each, click Map Stages. Below is a recap of the relevant stage names
Byteboard Stage
Pipeline stage to send CoreEval interview
Onsite Stage
Pipeline stage immediately following CoreEval interview (applicable even if your organization does not have an onsite stage label
Offer Stage
Pipeline stage that indicates candidate has received an offer.
Notion image
 

Note, the Byteboard Stage, Onsite Stage, and Offer Stage must be mapped in order for Lever integration to work. Only one value may be selected for each category, and a Lever stage can only be mapped to a single Byteboard Stage.

💡
If the stages in your Lever account change in the future, you can click back into the the ‘Configure Stages’ button on the team settings page, re-enter the Setup API Key (or create a new one), and click Edit to re-map the stages to Byteboard as needed. Once the changes are applied, click Map Stages again to save the new mappings.
Notion image

Configure Archive Reasons

  1. Click the Configure Archive Reasons button on the Byteboard Team Settings page under the Configure Archive Reasons and State Changes heading.
    1. Notion image
  1. Upload your Initial Setup Key and click Submit.
    1. Notion image
  1. You will be directed to match your company’s Lever archive reasons to the appropriate Byteboard Archive Reason. Select the Byteboard Offer Status option that should be mapped to each of the Lever Archive Reasons stages by clicking the arrow next to that Archive Reason and selecting the appropriate value (e.g., if a candidate is archived in Lever with the reason Underqualified, you may choose to map that value to the Byteboard ‘Rejected’ value for the candidate’s Offer Status).
Expand here for example screenshot of the completed Lever Archive Reasons mappings
*Note — the archive reasons used in your Lever instance may be different from the examples here
*Note — the archive reasons used in your Lever instance may be different from the examples here
  1. Each archive reason must be mapped in order for the Lever integration to work.
  1. Your candidates’ Byteboard Offer Status data will begin to populate automatically via the integration for future candidates once they are archived in Lever
 

The following chart shows some common archive reasons that are utilized in Lever:

Byteboard Lever Integration Field
Lever Archive Reason Examples
Rejected
Not a fit, Underqualified, Preferred another candidate, Overqualified, Keep for future opportunities, Motivations Misalignment, Misaligned values, Plagiarism, Junior for role
Withdrew
Withdrew
Offer Accepted
Hired
Offer Declined
Offer declined, accepted another offer
Not Applicable
Duplicate application, Unresponsive, Timing, Position closed, Location, Visa Status, Better for another role, Compensation Misalignment, Expired, Distance

3. Set Up Web Hooks

Webhooks allow Lever to send requests to Byteboard when certain actions are taken by users in Lever. For example, when you put a candidate in the Byteboard Stage on Lever, Lever sends us a leverStageChange event so that we know to send a Byteboard CoreEval interview invitation to the candidate.

 

Follow Lever’s How to set up webhooks documentation and complete the steps below to set up the two web hooks needed for the integration.

 
  1. Navigate to Settings > Integrations and API > WEBHOOKS.
  1. You will need the urls from the Byteboard Team Settings page under SETUP WEBHOOKS
    1. Notion image
  1. Create one webhook for the Candidate State Change event (leverStageChange)
      • A. Toggle on the Candidate State Change event and click + Add webhook
      • B. Copy the State Change web hook URL from the Byteboard portal by clicking the Page icon next to it
      • C. Paste the Stage Change URL from the Byteboard Team Settings page (step 3 in Lever setup) directly into the Lever URL box
      • D. Copy the Signature token for the State Change web hook and store it in a secure place
      Notion image
  1. Create one webhook for the Candidate Archive State Change event (leverArchiveChange)
      • A. Toggle on the Candidate Archive State Change event and click + Add webhook in that section
      • B. Copy the Archive Change webhook URL from the Byteboard portal by clicking the page icon next to it
      • C. Paste the Archive Change URL from the Byteboard Team Settings page (step 3 in Lever setup) directly into the Lever URL box
      • D. Copy the Signature token for the Archive Change web hook and store it in a secure place
      Notion image
 
🚧
Note, if you try to test the connection after setting up the web hooks (by clicking Verify Connection in Lever on the web hook page), the request will fail. This is expected and does not mean your integration does not work.

4. Set Up Byteboard Tags

Candidate tags communicate to Byteboard which CoreEval Assessment Type you would like a candidate to receive. You can view assessment types at https://client.byteboard.dev/assessments/coreeval.

 

To set up Byteboard tags:

  1. Visit the Byteboard Team Settings page to find tags under the Setup Byteboard Tags section
    1. Notion image
  1. Add these tags to a candidate record in Lever.
  1. To add a tag, click the paper icon (copy) next to the desired Byteboard CoreEval assessment type to the right, and paste it as a tag on the candidate record in Lever
 

A few notes on Byteboard tags:

  1. Tags must be used for all candidates that you are inviting to take Byteboard CoreEval interview through Lever; if tags are not used, Byteboard is unable to identify which CoreEval interview type to send to the candidate. Once you’ve added a tag to at least one candidate in Lever, the tags should auto-populate for future candidates you’d like to invite to the same interview type.
  1. Byteboard tags must be added to a candidate before the candidate is moved to the Lever stage that is mapped to Byteboard Stage, or else the Byteboard CoreEval interview invite will not be delivered.
  1. If you add new Byteboard CoreEval interview type to your account at any point via https://client.byteboard.dev/assessments/coreeval, visit the Byteboard Team Settings page in to copy over the new tag to Lever for use.
  1. Tags are case sensitive and must match exactly how they are displayed in team settings page.

5. Upload Your Signing Tokens

Signing tokens are used to verify that a request to Byteboard originated in Lever. This ensures third parties cannot attempt to use the webhook urls to send invitations on your behalf.

 

To upload your signing tokens:

  1. Follow Lever’s instructions on Securing webhooks documentation to generate signing tokens and copy them. You will need to generate one for each web hook (stage change and archive reason). Reference 1. Create & Upload Your API Keys to view where you can access the signature tokens and copy them over from in Lever
  1. Upload your tokens to the Byteboard Team Settings page under Upload Your Signing Tokens Once you’ve copied and pasted the two signature tokens, click Submit to save.
    1. Notion image

      Note, Byteboard will indicate once you have already submitted your signing token(s).

Testing the Lever Integration

To test the Lever integration, follow the steps outlined below to send a test candidate a Byteboard CoreEval interview from your Lever instance and view the end-to-end data that is transmitted via the integration. If you are interested in testing the Lever integration please contact support@byteboard.dev to complete the steps below:

 
  1. Create a test candidate in Lever using the email of your Byteboard point of contact.
      • Using the Byteboard team member’s email address ensures that we can “take the interview” and grade it according to complete the test
  1. Apply a tag from the 4. Set Up Byteboard Tags section of your Byteboard Team Settings page to the test candidate record in Lever.
      • You can use the corresponding tag for any of the Interview Types you have set up in your Byteboard account. Note, the Byteboard tag must be added to the candidate before moving forward with next step.
  1. In Lever, move the candidate to the pipeline stage corresponding to Byteboard Stage. Note, this is the stage in your Lever instance that you mapped to correspond with sending the Byteboard CoreEval interview invites.
  1. Verify that there is a note in the Byteboard stage in the Lever UI indicating that the invite was sent.
    1. This note will appear on the Lever candidate record — expand below for example image
      Notion image
  1. Your Byteboard point of contact will verify once the test candidate was processed correctly. This includes “taking the test CoreEval interview” and “grading the test CoreEval interview”
  1. Verify that there is a note in the Byteboard stage in the Lever UI with the candidate’s completed CoreEval interview information.
    1. This note will appear on the Lever candidate record — expand below for example image
      Example note on candidate record in Lever — the URL leads to the candidate’s graded Byteboard Interview and Skills Report
      Example note on candidate record in Lever — the URL leads to the candidate’s graded Byteboard Interview and Skills Report
  1. Move the test candidate to the onsite stage in Lever. Note, this should be the Lever pipeline stage that was mapped to correspond with Byteboard’s Onsite Stage.
  1. Reject the test candidate in Lever. Select an Archive Reason that was mapped to a corresponding Offer Stage option in your Byteboard portal.
 

After completing the steps above, your Byteboard point of contact will verify that the candidate’s next steps and offer status were updated and set correctly according to the integration configuration.

 
 

Cleanup (optional)

Delete the Setup API Key (optional)

Once your Lever integration setup is complete and your Byteboard representative has verified that everything is working as expected, you can delete the Setup API key in your Lever instance (the key with the setup permissions)

 
💡
If the stages in your Lever instance change in the future, click back into the the ‘Configure Stages’ button on the team settings page. If you deleted your original Setup API Key, create a new one following Step 1a above, and submit it to access the View Lever Stages page. Then click Edit at the bottom of the screen to re-map the stages to Byteboard as needed. Once the changes are applied, click Map Stages again to save the new mappings.
Notion image
Did this answer your question?
😞
😐
🤩