Dock Web3 ID signs users in with verifiable credentials they hold in a wallet, rather than an account on a provider's server. It is the connector for products built on decentralized identity.

## Copy the redirect URI

In the [Authdog console](https://console.authdog.com), select the project and environment, open **Authentication > Providers**, find **Dock Web3 ID**, and click **Enable**. Copy the redirect URI shown in the form:

```url
https://identity.authdog.com/api/v1/callback/<connectionId>
```

## Create the application

1. Create an OIDC client in your Dock Web3 ID account.
2. Add the redirect URI from Authdog to the client.
3. Copy the **Client ID** and **Client Secret**.
4. Note the host to use as the Domain URI.

## Configure Authdog

| Field | Value |
| --- | --- |
| **Client ID** | The client identifier from the provider |
| **Client Secret** | The client secret from the provider |
| **Domain URI** | Your Dock Web3 ID host |

Save, then toggle the connection **active**.

> **Caution**
>
> Authdog substitutes the Domain URI into this provider's endpoints for
> AWS Cognito, Salesforce Community, Shopify, Klarna, and Keycloak. This
> connector accepts the field in the console but is not covered by that
> substitution on both legs of the flow, so verify it end to end in a
> development environment before you rely on it in production.

## What Dock Web3 ID returns

Authdog requests the `openid profile email` scopes and reads the profile from ``https://<domain>/userinfo``.

The userinfo endpoint returns the claims released from the presented verifiable credential.

The subject identifier is derived from the credential, so a user who re-issues credentials may present a different subject. Decide up front whether your linking strategy tolerates that.

## Test it

1. Open your environment's hosted sign-in page, or link to `https://identity.authdog.com/api/v1/signin/<connectionId>`.
2. Select the Dock Web3 ID button and complete the flow.
3. Confirm the user appears under **Users** in the console with a Dock Web3 ID identity linked.

## Troubleshooting

| Symptom | Cause |
| --- | --- |
| Presentation rejected | The requested credential type is not one the wallet holds |
| Redirect or callback URL error | The URI registered with the provider does not match Authdog's exactly |
| Works in one environment only | Each environment has its own `connectionId`, and so its own redirect URI to register |

## Related

| Read | To learn how to |
| --- | --- |
| [Connectors](/docs/connectors) | Set up any other social provider |
