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

# Snyk OAuth 2.0 connector profile – StackOne setup guide

> Set up a connector profile using OAuth 2.0 for Snyk in StackOne to allow users to link their accounts.

> [!WARNING]
>
> Registering a Snyk App requires an existing Auth Token or Personal Access Token to call the registration API, and authorizing it requires admin access to the owning organization. A Snyk App only reaches the organizations, projects, and collections scopes it was registered with — it cannot read groups, roles, service accounts, invites, tenants, audit logs, or issues, unlike the Auth Token and Personal Access Token auth types.

Select Actions to adjust the guideSome actions may require additional configuration in the provider to be accessible. Choose the actions you need and the guide will be updated.

Select all
Clear

ActionScope(s)

Loading actions...No actions match your search.

Dynamic Guide URL

Copy URL

Scopes Selected

<pre role="textbox" aria-readonly="true" tabIndex="0" />

Separator

Copy scopes

## Find your Snyk region

Snyk hosts accounts in several regional data centers, and an app only authorizes against its\
own region. Your region is shown in your browser's address bar whenever you are signed in to\
Snyk — it is the host in the URL, the part between `https://` and the first `/`. Match that\
host to the **Region** you select below.

<ul>
  <li>Sign in to Snyk and look at your browser's address bar.</li>
  <li>`app.snyk.io` → **US (SNYK-US-01)** — api.snyk.io</li>
  <li>`app.us.snyk.io` → **US (SNYK-US-02)** — api.us.snyk.io</li>
  <li>`app.eu.snyk.io` → **EU (SNYK-EU-01)** — api.eu.snyk.io</li>
  <li>`app.au.snyk.io` → **AU (SNYK-AU-01)** — api.au.snyk.io</li>
</ul>

## Register a Snyk App

Snyk has no page to create an OAuth app from. Its **Authorized Snyk Apps** settings page only\
lists apps you've already authorized and points to the API docs to create one — the\
[Snyk Apps](https://docs.snyk.io/snyk-api/snyk-apps) documentation confirms a Snyk App is\
registered with a direct API call, not through the web UI.

**1. Register the app**

Send a request to register the app for the organization that should own it, using an\
Auth Token or Personal Access Token you already have. Run the following command,\
replacing `<org_id>`, `<your-region-api-host>`, `<your_token>`, and `<callback_url>`\
with your organization ID, region API host, token, and the **Callback URL** from your\
Connector Profile:

```bash theme={null}
curl -X POST 'https://<your-region-api-host>/rest/orgs/<org_id>/apps?version=2026-03-25' \
  -H 'Authorization: token <your_token>' \
  -H 'Content-Type: application/vnd.api+json' \
  -d '{
    "name": "StackOne Integration",
    "redirect_uris": ["<callback_url>"],
    "scopes": ["org.read", "org.project.read", "org.collection.read"]
  }'
```

<ul>
  <li>`name` — a descriptive name for the app, such as `StackOne Integration`. Any name works; it is only a label.</li>
  <li>`redirect_uris` — must include the **Callback URL** from your Connector Profile.</li>
  <li>Format: `https://<api-host>/connect/oauth2/snyk/callback`</li>
  <li>Example: `https://api.stackone.com/connect/oauth2/snyk/callback`</li>
  <li>`scopes` — the permissions this integration needs.</li>
</ul>

![The Snyk Authorized Snyk Apps settings page, showing no apps authorized yet and a link to the Snyk Apps API documentation.](https://mintcdn.com/stackone-60/rGEO8FgIpyMDuTw-/connectors/snyk/images/oauth2-setup-authorized-apps.png?fit=max\&auto=format\&n=rGEO8FgIpyMDuTw-\&q=85\&s=f48d9c1c9604a1b2b5c3afe940ba0f3a)

**2. Configure permissions**

Enables actions: Add Projects To Collection, Create Collection, Delete Collection, Delete Project, Get Collection, Get Organization, Get Project, List Collection Projects, List Collections, List Organizations, List Projects, Remove Projects From Collection, Update Collection, Update Organization, Update Project

List in the `scopes` array only the permissions this integration needs.

<ul>
  <li>
    org.read
  </li>

  <li>
    org.edit
  </li>

  <li>
    org.project.read
  </li>

  <li>
    org.project.edit
  </li>

  <li>
    org.project.delete
  </li>

  <li>
    org.collection.read
  </li>

  <li>
    org.collection.create
  </li>

  <li>
    org.collection.edit
  </li>

  <li>
    org.collection.delete
  </li>
</ul>

**3. Copy the Client ID and Client Secret**

The response returns the app's credentials under `data.attributes`.

<ul>
  <li>Copy the **Client ID** (`client_id` in the response) into your Connector Profile.</li>
  <li>Copy the **Client Secret** (`client_secret` in the response) into your Connector Profile — it is returned only once and cannot be retrieved later.</li>
</ul>

## Create the StackOne Connector Profile

**1. Create a Connector Profile**

Enable the connector and create a Connector Profile in your project. See [Setup Connector Profile](https://docs.stackone.com/gateway/quickstart.md#setup-connector-profile).

**2. Link an Account**

Once the Connector Profile is created, continue to [link an account](https://docs.stackone.com/connectors/snyk/guides/link-account/oauth-2-0.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.