> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oleria.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bonusly

> Connect Bonusly to Oleria to bring employee accounts and admin role standing from your peer-recognition platform into your identity and access graph.

Connect Bonusly to Oleria to extend visibility into your employee recognition and rewards platform. Oleria reads accounts and admin-role standing from the Bonusly REST API using a Personal Access Token, so accounts with elevated Bonusly access are visible alongside the rest of your identity and access graph. This page provides step-by-step guidance for connecting Bonusly to Oleria.

## What Oleria discovers

Once connected, Oleria continuously discovers and maps the following from Bonusly:

* **Accounts** - every user in your Bonusly account, including the profile fields exposed by the Bonusly Users API. Archived accounts are included, so a leaver who still exists in Bonusly remains visible.
* **Admin roles** - Bonusly's fixed three-tier role model (Member, Tech Admin, Global Admin), derived from the admin flags on each user's account.

<Note>
  Bonusly is a peer-recognition and rewards tool, not an identity or HR system of record. It has no group, team, or department object of its own - recognition is peer-to-peer among individual accounts rather than organized into groups - so Oleria does not discover groups from Bonusly. Bonusly also exposes no audit-log or activity API, so no activity is discovered.
</Note>

## Prerequisites

* A Bonusly Global admin or Tech admin account, to create a company-wide Personal Access Token
* Admin access to the Oleria workspace

<Note>
  Either admin tier works. Bonusly reserves some token scopes (`finance:administer`, `awards:administer`) for Global admins only, but the `users:read` scope this integration requests is available to Global admin and Tech admin accounts equally.
</Note>

## Generate a Personal Access Token in Bonusly

<Steps>
  <Step title="Open API & Tokens">
    Sign in to Bonusly as a Global or Tech admin, then select **Company** -> **Integrations** -> **API & Tokens**.
  </Step>

  <Step title="Create a token">
    Select **Create token** and give it a recognizable name, for example `Oleria Integration`.
  </Step>

  <Step title="Set the expiration">
    Choose an expiration of up to 365 days - Bonusly's maximum token lifetime. Bonusly emails a reminder 30 and 7 days before the token expires.
  </Step>

  <Step title="Grant the read scope">
    Grant the token the **users:read** scope. This is the only scope the Oleria connector requests.
  </Step>

  <Step title="Copy the token">
    Copy the token now.

    <Warning>
      Bonusly displays the plaintext token only once and stores only a hash afterward. If you lose it, you must create a new token and update the connection in Oleria.
    </Warning>
  </Step>
</Steps>

## Connect Bonusly to Oleria

<Steps>
  <Step title="Open the integration">
    Go to your Oleria workspace, select **Integrations** -> select **Bonusly**.
  </Step>

  <Step title="Complete the connection form">
    Select **Continue** and provide the following:

    | Field                 | Notes                                                        |
    | :-------------------- | :----------------------------------------------------------- |
    | Personal Access Token | Required. Paste the token generated in the previous section. |
  </Step>

  <Step title="Confirm the connection">
    Select **Authenticate** to validate the credentials. Find the newly connected Bonusly instance in your Oleria workspace connected integrations.
  </Step>
</Steps>

## Verify the integration

Confirm the Bonusly instance appears in your Oleria workspace connected integrations. After the first sync completes, you can review the discovered accounts and admin roles in your Oleria workspace.

<Note>
  The token expires after at most 365 days. Before it does, mint a replacement in Bonusly and update it in Oleria by editing the integration - an expired or revoked token will cause the sync to fail.
</Note>

## Known limitations

* **No groups** - Bonusly has no group, team, or department object, so no group data is discovered.
* **No MFA or SSO enrollment data** - Bonusly exposes no per-user or company-level MFA or SSO field. Oleria reports these as unavailable, not as a false negative.
* **No API-access flag** - Bonusly has no per-user API-access indicator, so this field is always reported as not granted.
* **No activity** - Bonusly has no audit-log or activity-stream endpoint, so no activity is discovered.

## Contact us

For questions about this integration, contact us at [support@oleria.com](mailto:support@oleria.com).
