Skip to content

Commit 5abe142

Browse files
authored
Merge pull request #820 from IABTechLab/gwh-APIDOCS-2828-integ-guides-portal-instructions
all guides: update instructions re UID2 Portal
2 parents 0d82193 + 0ed1c1a commit 5abe142

38 files changed

+408
-87
lines changed

docs/endpoints/post-identity-buckets.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ You must encrypt all requests using your secret. For details, and code examples
3030
| `{environment}` | string | Required | Testing (integration) environment: `https://operator-integ.uidapi.com`<br/>Production environment: The best choice depends on where your users are based. For information about how to choose the best URL for your use case, and a full list of valid base URLs, see [Environments](../getting-started/gs-environments.md). |
3131

3232
:::note
33-
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.
33+
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>. For information about getting credentials for each environment, see [Getting Your Credentials](../getting-started/gs-credentials.md#getting-your-credentials).
3434
:::
3535

3636
### Unencrypted JSON Body Parameters

docs/endpoints/post-identity-map.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ You must encrypt all requests using your secret. For details, and code examples
4141
| `{environment}` | string | Required | Testing (integration) environment: `https://operator-integ.uidapi.com`<br/>Production environment: The best choice depends on where your users are based. For information about how to choose the best URL for your use case, and a full list of valid base URLs, see [Environments](../getting-started/gs-environments.md). |
4242

4343
:::note
44-
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.
44+
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>. For information about getting credentials for each environment, see [Getting Your Credentials](../getting-started/gs-credentials.md#getting-your-credentials).
4545
:::
4646

4747
### Unencrypted JSON Body Parameters

docs/endpoints/post-optout-status.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ You must encrypt all requests using your secret. For details, and code examples
4343
| `{environment}` | string | Required | Testing (integration) environment: `https://operator-integ.uidapi.com`<br/>Production environment: The best choice depends on where your users are based. For information about how to choose the best URL for your use case, and a full list of valid base URLs, see [Environments](../getting-started/gs-environments.md). |
4444

4545
:::note
46-
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.
46+
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>. For information about getting credentials for each environment, see [Getting Your Credentials](../getting-started/gs-credentials.md#getting-your-credentials).
4747
:::
4848

4949
### Unencrypted JSON Body Parameters

docs/endpoints/post-token-validate.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ You must encrypt all requests using your secret key. For details, and code examp
3434
| `{environment}` | string | Required | Testing (integration) environment: `https://operator-integ.uidapi.com`<br/>Production environment: The best choice depends on where your users are based. For information about how to choose the best URL for your use case, and a full list of valid base URLs, see [Environments](../getting-started/gs-environments.md). |
3535

3636
:::note
37-
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.
37+
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>. For information about getting credentials for each environment, see [Getting Your Credentials](../getting-started/gs-credentials.md#getting-your-credentials).
3838
:::
3939

4040
### Unencrypted JSON Body Parameters

docs/getting-started/gs-account-setup.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,13 @@ Contacting The Trade Desk for access is temporary. When the system is moved to i
3131
When you've expressed interest in UID2, someone will contact you to help work out the details.
3232

3333
As part of account setup, provide the following information:
34-
* Name
35-
* Email address
36-
* Company name
37-
* Name and contact information for an authorized individual who can sign the contract.
34+
35+
* Company name: The legal company name to be used in the UID2 contract.
36+
37+
* A primary contact person. This individual becomes the primary administrator for the account. Include these values:
38+
* Name
39+
* Email address
40+
* Job title
3841

3942
### Client-Side Web Integrations
4043

docs/getting-started/gs-credentials.md

Lines changed: 70 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,72 @@ import Link from '@docusaurus/Link';
99

1010
# UID2 Credentials
1111

12-
Each UID2 <a href="../intro#participants">participant</a> gets a set of unique credentials. The set of credentials you get is determined by how you are participating in UID2, as shown in the following table.
12+
Each UID2 <a href="../intro#participants">participant</a> needs at least one set of unique credentials. The set of credentials you need is determined by how you are participating in UID2, as shown in the following table.
1313

1414
| Audience | Credentials | Integration |
1515
| :--- | :--- | :--- |
1616
| Participants using a client-side implementation | Both of the following: <ul><li><Link href="../ref-info/glossary-uid#gl-subscription-id">Subscription ID</Link></li><li><Link href="../ref-info/glossary-uid#gl-public-key">Public key</Link></li></ul>These two, together, are sometimes called <Link href="../ref-info/glossary-uid#gl-client-keypair">client keypair</Link>. | Integrations using one of these: <ul><li>[UID2 Client-Side Integration Guide for Prebid.js](../guides/integration-prebid-client-side.md)</li><li>[Client-Side Integration Guide for JavaScript](../guides/integration-javascript-client-side.md)</li><li>[UID2 Client-Side Integration Guide for Mobile](../guides/integration-mobile-client-side.md)</li></ul> |
1717
| Participants using a client-server implementation | Both of the following:<ul><li><Link href="../ref-info/glossary-uid#gl-api-key">API key</Link>, also called a client key</li><li><Link href="../ref-info/glossary-uid#gl-client-secret">Client secret</Link>, a value known only to the participant and the UID2 service</li></ul> | Integrations using one of these: <ul><li>[Client-Server Integration Guide for JavaScript](../guides/integration-javascript-client-server.md)</li><li>[UID2 Client-Server Integration Guide for Prebid.js](../guides/integration-prebid-client-server.md)</li><li>[UID2 Client-Server Integration Guide for Mobile](../guides/integration-mobile-client-server.md)</li></ul> |
1818
| Participants using a server-side implementation | Both of the following:<ul><li><Link href="../ref-info/glossary-uid#gl-api-key">API key</Link>, also called a client key</li><li><Link href="../ref-info/glossary-uid#gl-client-secret">Client secret</Link>, a value known only to the participant and the UID2 service</li></ul> | Integrations using one of these: <ul><li>[Publisher Integration Guide, Server-Side](../guides/integration-publisher-server-side.md)</li><li>[Advertiser/Data Provider Integration Overview](../guides/integration-advertiser-dataprovider-overview.md)</li></ul> |
1919

20-
If you're using the integration environment as well as the production environment, you'll get a separate set of credentials for each environment.
20+
## Separate Credentials Per Environment/Role
21+
22+
If you're using the integration <Link href="../ref-info/glossary-uid#gl-environment">environment</Link> as well as the production environment, you'll get a separate set of credentials for each environment. See [Getting Your Credentials](#getting-your-credentials).
23+
24+
In addition, in some cases, we recommend, but do not require, that you have a different set of credentials for a different scenario. For example:
25+
- If you're a publisher who generates UID2 tokens (via [POST /token/generate](../endpoints/post-token-generate.md) or in some other way), but you also create/map raw UID2s on your own behalf (see [POST /identity/map](../endpoints/post-identity-map.md)), you might have separate credentials for each of these activities.
26+
- If you're an advertiser, in a scenario where you allow multiple service providers to operate using your advertiser keys, you might choose to have separate credentials for each service provider.
27+
28+
## Getting Your Credentials
29+
30+
The following table shows how you get your credentials, for each [integration approach](../ref-info/ref-integration-approaches.md) and each [environment](../getting-started/gs-environments.md).
31+
32+
<table>
33+
<thead>
34+
<tr>
35+
<th>Environment</th>
36+
<th>Integration Type</th>
37+
<th>Getting Credentials</th>
38+
</tr>
39+
</thead>
40+
<tbody>
41+
<tr>
42+
<td rowspan="3"><br/><br/>Prod</td>
43+
<td>Client-Side</td>
44+
<td>UID2 Portal > [Client-Side Integration](../portal/client-side-integration.md)</td>
45+
</tr>
46+
<tr>
47+
48+
<td>Client-Server</td>
49+
<td>UID2 Portal > [API Keys](../portal/api-keys.md)</td>
50+
</tr>
51+
<tr>
52+
53+
<td>Server-Side</td>
54+
<td>UID2 Portal > [API Keys](../portal/api-keys.md)</td>
55+
</tr>
56+
<tr>
57+
<td rowspan="3"><br/><br/>Integ</td>
58+
<td>Client-Side</td>
59+
<td rowspan="3"><br/><br/>Ask your UID2 contact.</td>
60+
</tr>
61+
<tr>
62+
63+
<td>Client-Server</td>
64+
65+
</tr>
66+
<tr>
67+
68+
<td>Server-Side</td>
69+
70+
</tr>
71+
</tbody>
72+
</table>
73+
74+
<!--
75+
For no-portal:
76+
To get your credentials, ask your UID2 contact.
77+
-->
2178

2279
## Subscription ID and Public Key
2380

@@ -33,7 +90,7 @@ Notes:
3390

3491
- Unlike the API key and client secret, the Subscription ID and public key do not have to be kept secure.
3592

36-
- The values are valid for a specific [environment](gs-environments.md). If you're using both the integration and production environments, you'll get a set of credentials for each environment.
93+
- The values are valid for a specific environment. If you're using both the integration and production environments, you'll get a set of credentials for each environment.
3794

3895
- Subscription ID and public key credentials can be used only to generate client-side tokens. If you need any additional roles (see [API Permissions](gs-permissions.md)), request API Key and Client Secret for those roles.
3996

@@ -47,7 +104,7 @@ Here is some information about API keys and client secrets:
47104
- Each key has a set of [permissions](gs-permissions.md) that determine the endpoints you can use it on.
48105
- Each key has a corresponding client secret.
49106
- Most API endpoints require both API key and client secret for authentication. For details, see [Authentication and Authorization](gs-auth.md).
50-
- If you're using the integration environment as well as the production environment, you'll receive separate API keys for each environment.
107+
- If you're using the integration environment as well as the production environment, you'll receive separate API keys for each environment. For details, see [Getting Your Credentials](#getting-your-credentials).
51108
- The client secret is valid for a specific [environment](gs-environments.md). If you're using both the integration and production environments, you'll get a client secret for each environment.
52109

53110
As part of getting your UID2 account set up, we'll give you one or more API keys, each with a corresponding client secret. For details of who to talk to, see [Contact Info](gs-account-setup.md#contact-info).
@@ -64,4 +121,12 @@ It's best to refresh your API key and client secret on a regular cadence&#8212;f
64121

65122
## Refreshing Credentials
66123

67-
To request new credentials at any time, ask your UID2 contact.
124+
To request new credentials at any time, do one of the following:
125+
126+
- If you have UID2 Portal access, and you need new Production credentials: go to the page listed in [Getting Your Credentials](#getting-your-credentials).
127+
- If you don't have UID2 Portal access, or you need new credentials for the Integration environment, ask your UID2 contact.
128+
129+
<!--
130+
For no-portal:
131+
To request new credentials at any time, ask your UID2 contact.
132+
-->

docs/getting-started/gs-environments.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ import Link from '@docusaurus/Link';
1111

1212
Learn about the different environments available, and tips to reduce latency by choosing the best base URL for your integration.
1313

14-
## UID2 Testing and Production Environments
14+
## UID2 Integration and Production Environments
1515

16-
The following table lists all current testing and production environments for UID2.
16+
The following table lists all current integration (also known as testing) and production environments for UID2.
1717

1818
| Environment | Cloud Region | Code | Base URL |
1919
| :--- | :--- | :--- | :--- |
20-
| Integration Testing | AWS US East (Ohio) | `us-east-2` | `https://operator-integ.uidapi.com` |
20+
| Integration (for testing) | AWS US East (Ohio) | `us-east-2` | `https://operator-integ.uidapi.com` |
2121
| Production | Automatically optimized region routing via the <a href='https://aws.amazon.com/global-accelerator/'>AWS Global Accelerator</a> | `n/a` | `https://global.prod.uidapi.com` |
2222
| Production | AWS US East (Ohio) | `us-east-2` | `https://prod.uidapi.com` |
2323
| Production | AWS US West (Oregon) | `us-west-2` | `https://usw.prod.uidapi.com` |
@@ -30,9 +30,15 @@ For example, `https://operator-integ.uidapi.com/v2/token/generate`.
3030
Notes:
3131

3232
- All UID2 endpoints use the same base URL.
33-
- The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.
33+
- The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>. For information about getting credentials for each environment, see [Getting Your Credentials](../getting-started/gs-credentials.md#getting-your-credentials).
3434
- The expiration time of the <Link href="../ref-info/glossary-uid#gl-uid2-token">UID2 token</Link> returned by the [POST&nbsp;/token/generate](../endpoints/post-token-generate.md) or [POST&nbsp;/token/refresh](../endpoints/post-token-refresh.md) endpoints is subject to change, but is always significantly shorter in the integration environment than it is in the production environment.
3535

36+
## Getting Credentials for Each Environment
37+
38+
If you're using the integration environment as well as the production environment, you'll need to get a separate set of credentials for each environment.
39+
40+
For details about getting the values you need to access each environment, see [Getting Your Credentials](gs-credentials.md#getting-your-credentials).
41+
3642
## Specifying the Base URL to Reduce Latency
3743

3844
The latency of API calls depends on the proximity of the client to the UID2 servers. To reduce the latency, especially when making API calls from consumer devices, you might consider choosing a server closer to your users.

docs/guides/integration-advertiser-dataprovider-endpoints.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,21 @@ This guide covers integration steps for advertisers and data providers to integr
1616
For a summary of all integration options and steps for advertisers and data providers, see [Advertiser/Data Provider Integration Overview](integration-advertiser-dataprovider-overview.md).
1717
:::
1818

19+
## Complete UID2 Account Setup and Configure Account
20+
21+
To integrate with UID2, you'll need to have a UID2 account. If you haven't yet created an account, first follow the steps described on the [Account Setup](../getting-started/gs-account-setup.md) page.
22+
23+
When initial account setup is complete, you'll receive instructions and a link to access the [UID2 Portal](../portal/portal-overview.md), where you can create your [credentials](../getting-started/gs-credentials.md) for the production environment and configure additional values, if needed. For details, see [Getting Started with the UID2 Portal](../portal/portal-getting-started.md).
24+
25+
You'll need to set up these values, in the UID2 Portal on the [API Keys](../portal/api-keys.md) page:
26+
27+
- <Link href="../ref-info/glossary-uid#gl-api-key">API key</Link>, also called a client key
28+
- <Link href="../ref-info/glossary-uid#gl-client-secret">Client secret</Link>, a value known only to the participant and the UID2 service
29+
30+
:::important
31+
It's very important that you keep these values secure. For details, see [Security of API Key and Client Secret](../getting-started/gs-credentials.md#security-of-api-key-and-client-secret).
32+
:::
33+
1934
## High-Level Steps
2035

2136
At a high level, the steps for advertisers and data providers integrating with UID2 are as follows:

docs/guides/integration-ctv-guide.md

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,26 @@ To determine how you'll implement these steps, choose from the [CTV Integration
2727

2828
<IntegratingWithSSO />
2929

30+
## Complete UID2 Account Setup and Configure Account
31+
32+
To integrate with UID2, you'll need to have a UID2 account. If you haven't yet created an account, first follow the steps described on the [Account Setup](../getting-started/gs-account-setup.md) page.
33+
34+
When initial account setup is complete, you'll receive instructions and a link to access the [UID2 Portal](../portal/portal-overview.md), where you can create your [credentials](../getting-started/gs-credentials.md) for the production environment and configure additional values, if needed. For details, see [Getting Started with the UID2 Portal](../portal/portal-getting-started.md).
35+
36+
The specific values you set up will depend on which of the [CTV integration options](#ctv-integration-options) you choose:
37+
38+
- For a client-server or server-side implementation, you'll need to set up these values, in the UID2 Portal on the [API Keys](../portal/api-keys.md) page:
39+
- <Link href="../ref-info/glossary-uid#gl-api-key">API key</Link>, also called a client key
40+
- <Link href="../ref-info/glossary-uid#gl-client-secret">Client secret</Link>, a value known only to the participant and the UID2 service
41+
42+
:::important
43+
It's very important that you keep these values secure. For details, see [Security of API Key and Client Secret](../getting-started/gs-credentials.md#security-of-api-key-and-client-secret).
44+
:::
45+
- For a client-side implementation, you'll need to set up these values, in the UID2 Portal on the [Client-Side Integration](../portal/client-side-integration.md) page:
46+
- Subscription ID and Public Key: See [Adding and Managing Key Pairs](../portal/client-side-integration.md#adding-and-managing-key-pairs)
47+
- A list of **domain names** for any sites on which you'll be using this SDK: See [Adding and Managing Root-Level Domains](../portal/client-side-integration.md#adding-and-managing-root-level-domains)
48+
- Mobile App IDs (any that apply): See [Adding and Managing Mobile App IDs](../portal/client-side-integration.md#adding-and-managing-mobile-app-ids)
49+
3050
## CTV Integration Options
3151

3252
You can decide on the integration option that's best for you based on where you want to generate and refresh the UID2 token. There are three options, as follows:
@@ -35,7 +55,7 @@ You can decide on the integration option that's best for you based on where you
3555
- [Server-Side Integration](#server-side-integration-for-ctv-apps) (the token is generated and refreshed on the server side)
3656
- [Client-Server Integration](#client-server-integration-for-ctv-apps) (the token is generated on the server side and refreshed on the client side)
3757

38-
## Client-Side Integration for CTV Apps
58+
### Client-Side Integration for CTV Apps
3959

4060
The client-side option is for publishers who want to manage the UID2 token entirely on the client side:
4161

@@ -53,7 +73,7 @@ The following table shows supported operating systems, with links to applicable
5373
| [Apple tvOS](https://developer.apple.com/tvos/) | [UID2 Client-Side Integration Guide for Mobile](../guides/integration-mobile-client-side.md) | [SDK for iOS Reference Guide](../sdks/sdk-ref-ios.md) |
5474
| [Android TV](https://www.android.com/tv/) | [UID2 Client-Side Integration Guide for Mobile](../guides/integration-mobile-client-side.md) | [SDK for Android Reference Guide](../sdks/sdk-ref-android.md) |
5575

56-
## Server-Side Integration for CTV Apps
76+
### Server-Side Integration for CTV Apps
5777

5878
The server-side option is for publishers who want to manage the UID2 token entirely on the server side:
5979

@@ -71,7 +91,7 @@ If your server-side code is in Java or Python, you can use one of the UID2 SDKs
7191
- [SDK for Java Reference Guide: Usage for Publishers](../sdks/sdk-ref-java.md#usage-for-publishers)
7292
- [SDK for Python Reference Guide: Usage for Publishers](../sdks/sdk-ref-python.md#usage-for-publishers)
7393

74-
## Client-Server Integration for CTV Apps
94+
### Client-Server Integration for CTV Apps
7595

7696
This option is for publishers who want to manage the UID2 tokens with a client-server approach:
7797

0 commit comments

Comments
 (0)