# Using Direct Link

Using a direct link is the quickest way partners can start onboarding clients and their phone numbers to their platform. No-code solution.

## Limitations

Implementation of the following is **not covered** in this guide:

* [ ] [Setting a redirect URL and handling the redirect queries.](/partner/partner-api/overview.md#partner-hub-redirect-url)\
  This takes clients to the partner's website after Integrated Onboarding. Partners can display a success message afterwards, or show other helpful information.
* [ ] [Setting partner webhook URL and handling events.](/partner/partner-api/overview.md#partner-hub-webhook)\
  Clients' phone numbers receive management events (like channel status changed) that are forwarded to the partner webhook URL.
* [ ] [Using IO Signature for securely triggering Integrated Onboarding.](/partner/onboarding/integrated-onboarding/io-signature.md)\
  IO Signature is an **optional** feature that prevents clients from onboarding phone numbers without authorization from the partner platform.

For a comprehensive guide that covers these topics, see [Using Custom IO](/partner/onboarding/integrated-onboarding/using-custom-io.md).

Partners using React can instead embed the 360Dialog Connect Button for a streamlined Integrated Onboarding experience: [Using Connect Button](/partner/onboarding/integrated-onboarding/connect-button.md)

## Prepare and Use Link

{% stepper %}
{% step %}

### Get Partner ID

**Integration** tab of the 360Dialog Hub shows the partner ID. [Click here to go to the Integration tab.](https://hub.360dialog.com/dashboard/partner/integration)

Look under **Integration Settings** for the Partner ID field. Copy this ID.

<figure><img src="/files/F4sIav5667o08VKxOsJL" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Add Partner ID to Link

Replace **Partner ID** in the snippet below with the ID acquired in Step 1:

`https://hub.360dialog.com/dashboard/app/` **Partner ID** `/permissions`

For a partner with partner ID aAbBcCPA, the direct link would look like:

`https://hub.360dialog.com/dashboard/app/`**`aAbBcCPA`**`/permissions`
{% endstep %}

{% step %}

### Click Link

When clients click this link, they will start onboarding a new phone number under the partner account.

Clients of [Direct-Paid partner accounts](/partner/get-started/billing-models.md#direct-paid) will see a price detail and payment information page between the **Account Creation** and **Embedded Signup** steps.

The client needs to grant API key permission before the partner can generate an API key for them. Clients can give this permission during the Integrated Onboarding flow (pictured below), or in the 360Dialog Hub after onboarding.
{% endstep %}

{% step %}

### Generate API Key

When the channel reaches `running` status, create an API key for the newly-onboarded phone number to begin sending messages with this phone number.

```bash
curl -X POST https://hub.360dialog.io/api/v2/partners/channels/{channelId}/api-keys \
  -H "Authorization: Bearer YOUR_PARTNER_TOKEN"
```

Store the returned API key securely - it cannot be retrieved later.

{% hint style="info" %}
**Reminder for** [**Direct-Paid partners**](/partner/get-started/billing-models.md#direct-paid)

Partners on the Direct-Paid billing plan must receive API key permission from their client before being allowed to generate an API key for the client's phone number.

Clients are asked during onboarding if they want to grant API key permission. They can also grant API key permission later in the 360Dialog Hub.

See [Partner Permissions](/partner/partner-hub/api-keys.md) for details.
{% endhint %}
{% endstep %}
{% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.360dialog.com/partner/onboarding/integrated-onboarding/using-direct-link.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
