Skip to content

Commit 31f5a8e

Browse files
committed
Merge main branch
2 parents 48940ca + fb9ab01 commit 31f5a8e

File tree

91 files changed

+770
-563
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+770
-563
lines changed

.github/workflows/deploy.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,21 +24,21 @@ jobs:
2424
runs-on: ubuntu-latest
2525
steps:
2626
- name: Checkout
27-
uses: actions/checkout@v3
28-
- uses: actions/setup-node@v3
27+
uses: actions/checkout@v4
28+
- uses: actions/setup-node@v4
2929
with:
30-
node-version: 18
30+
node-version: 20
3131
cache: npm
3232
- name: Install dependencies
3333
run: npm ci
3434
- name: Build website
3535
run: npm run build
3636
- name: Setup Pages
37-
uses: actions/configure-pages@v3
37+
uses: actions/configure-pages@v5
3838
- name: Upload artifact
39-
uses: actions/upload-pages-artifact@v1
39+
uses: actions/upload-pages-artifact@v3
4040
with:
4141
path: './build'
4242
- name: Deploy to GitHub Pages
4343
id: deployment
44-
uses: actions/deploy-pages@v2
44+
uses: actions/deploy-pages@v4

.github/workflows/deployPreview.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
runs-on: ubuntu-latest
2424
steps:
2525
- name: Checkout
26-
uses: actions/checkout@v3
26+
uses: actions/checkout@v4
2727
- name: Clone to preview folder (excluding actions)
2828
run: rsync -arv --delete --delete-excluded --exclude=".github" --exclude="preview-output" --exclude="preview-output" --exclude=".git" ./ preview-output/
2929
- name: Push to staging repository
@@ -35,4 +35,4 @@ jobs:
3535
destination-github-username: 'UnifiedID2'
3636
destination-repository-name: 'uid2-docs-preview'
3737
target-branch: main
38-
target-directory: preview
38+
target-directory: preview

.github/workflows/test.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@ jobs:
1313
runs-on: ubuntu-latest
1414
steps:
1515
- name: Checkout
16-
uses: actions/checkout@v3
17-
- uses: actions/setup-node@v3
16+
uses: actions/checkout@v4
17+
- uses: actions/setup-node@v4
1818
with:
19-
node-version: 18
19+
node-version: 20
2020
cache: npm
2121
- name: Install dependencies
2222
run: npm ci
2323
- name: Build website
2424
run: npm run build
2525
- name: Vulnerability Scan
26-
uses: IABTechLab/uid2-shared-actions/actions/vulnerability_scan_filesystem@v2
26+
uses: IABTechLab/uid2-shared-actions/actions/vulnerability_scan_filesystem@v3

docs/endpoints/post-identity-buckets.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ Used by: This endpoint is used mainly by advertisers and data providers. For det
1717

1818
`POST '{environment}/v2/identity/buckets'`
1919

20+
For authentication details, see [Authentication and Authorization](../getting-started/gs-auth.md).
21+
2022
:::important
2123
You must encrypt all requests using your secret. For details, and code examples in different programming languages, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).
2224
:::
@@ -25,7 +27,7 @@ You must encrypt all requests using your secret. For details, and code examples
2527

2628
| Path Parameter | Data Type | Attribute | Description |
2729
| :--- | :--- | :--- | :--- |
28-
| `{environment}` | string | Required | 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). |
30+
| `{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). |
2931

3032
:::note
3133
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.

docs/endpoints/post-identity-map.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ Maps multiple email addresses, phone numbers, or their respective hashes to thei
1313

1414
Used by: This endpoint is used mainly by advertisers and data providers. For details, see [Advertiser/Data Provider Integration Guide](../guides/advertiser-dataprovider-guide.md).
1515

16+
For details about the UID2 opt-out workflow and how users can opt out, see [User Opt-Out](../getting-started/gs-opt-out.md).
17+
1618
## Batch Size and Request Parallelization Requirements
1719

1820
Here's what you need to know:
@@ -26,6 +28,8 @@ Here's what you need to know:
2628

2729
`POST '{environment}/v2/identity/map'`
2830

31+
For authentication details, see [Authentication and Authorization](../getting-started/gs-auth.md).
32+
2933
:::important
3034
You must encrypt all requests using your secret. For details, and code examples in different programming languages, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).
3135
:::
@@ -34,7 +38,7 @@ You must encrypt all requests using your secret. For details, and code examples
3438

3539
| Path Parameter | Data Type | Attribute | Description |
3640
| :--- | :--- | :--- | :--- |
37-
| `{environment}` | string | Required | 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). |
41+
| `{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). |
3842

3943
:::note
4044
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.
@@ -93,7 +97,7 @@ The following are unencrypted JSON request body examples for each parameter, one
9397
Here's an encrypted identity mapping request example for a phone number:
9498

9599
```sh
96-
echo '{"phone": ["+12345678901", "+441234567890"]}' | python3 uid2_request.py https://prod.uidapi.com/v2/identity/map YourTokenBV3tua4BXNw+HVUFpxLlGy8nWN6mtgMlIk= DELPabG/hsJsZk4Xm9Xr10Wb8qoKarg4ochUdY9e+Ow=
100+
echo '{"phone": ["+12345678901", "+441234567890"]}' | python3 uid2_request.py https://prod.uidapi.com/v2/identity/map [Your-Client-API-Key] [Your-Client-Secret]
97101
```
98102

99103
For details, and code examples in different programming languages, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).

docs/endpoints/post-optout-status.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ The key guidelines for managing batches of requests to this endpoint are as foll
3030

3131
`POST '{environment}/v2/optout/status'`
3232

33+
For authentication details, see [Authentication and Authorization](../getting-started/gs-auth.md).
34+
3335
:::important
3436
You must encrypt all requests using your secret. For details, and code examples in different programming languages, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).
3537
:::
@@ -38,7 +40,7 @@ You must encrypt all requests using your secret. For details, and code examples
3840

3941
| Path Parameter | Data Type | Attribute | Description |
4042
| :--- | :--- | :--- | :--- |
41-
| `{environment}` | string | Required | 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). |
43+
| `{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). |
4244

4345
:::note
4446
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.

docs/endpoints/post-token-generate.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@ Rather than calling this endpoint directly, you could use one of the SDKs to man
2626

2727
`POST '{environment}/v2/token/generate'`
2828

29-
Here's what you need to know about this endpoint requests:
29+
For authentication details, see [Authentication and Authorization](../getting-started/gs-auth.md).
30+
31+
Here's what you need to know about sending requests to this endpoint:
3032
- To ensure that the <Link href="../ref-info/glossary-uid#gl-api-key">API key</Link> used to access the service remains secret, UID2 tokens must be generated only on the server side after authentication.
3133
- You must encrypt all requests using your secret. For details, and code examples in different programming languages, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).
3234

@@ -53,7 +55,7 @@ You must include only **one** of the following four conditional parameters, plus
5355
### Request Examples
5456

5557
:::important
56-
To ensure that the API key used to access the service remains secret, the `POST /token/generate` endpoint must be called from the server side, unlike the [POST&nbsp;/token/refresh](post-token-refresh.md), which does not require using an API key.
58+
To ensure that the API key used to access the service remains secret, the `POST /token/generate` endpoint must be called from the server side, unlike [POST&nbsp;/token/refresh](post-token-refresh.md) which does not require using an API key. If you want to generate tokens on the client side, see [Client-Side Integration Options](../guides/integration-options-publisher-web.md#client-side-integration-options) (for web-based implementations) or [UID2 Client-Side Integration Guide for Mobile](../guides/integration-mobile-client-side.md).
5759
:::
5860

5961
The following are unencrypted JSON request body examples for each parameter, one of which you should include in your token generation requests:
@@ -103,7 +105,7 @@ This section includes the following sample responses:
103105

104106
#### Successful Response
105107

106-
A successful decrypted response returns the user's advertising and refresh tokens for the specified email address, phone number, or the respective hash.
108+
A successful decrypted response returns the user's advertising and refresh tokens for the specified email address, phone number, or the respective hash.
107109

108110
<IdentityGenerateResponse />
109111

@@ -145,8 +147,8 @@ If the `status` value is anything other than `success`, the `message` field prov
145147

146148
## Test Identities
147149

148-
| Type | Identity | Purpose | Next Endpoint |
149-
|:------|:-----------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------|
150+
| Type | Identity | Purpose | Next Endpoint |
151+
|:------|:-----------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------|
150152
| Email | `[email protected]` | Test that the `advertising_token` you've cached matches the `advertising_token` for the specified email address. | [POST&nbsp;/token/validate](post-token-validate.md) |
151153
| Email | `[email protected]` | Using this email for the request always generates an `optout` response. | [POST&nbsp;/token/generate](post-token-generate.md) |
152154
| Email | `[email protected]` | Using this email for the request always generates an identity response with a `refresh_token` that results in an `optout` response. | [POST&nbsp;/token/refresh](post-token-refresh.md) |

docs/endpoints/post-token-refresh.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Here's what you need to know about this endpoint:
3737

3838
| Path Parameter | Data Type | Attribute | Description |
3939
| :--- | :--- | :--- | :--- |
40-
| `{environment}` | string | Required | 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).<br/>Notes:<ul><li>The `integ` environment and the `prod` environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.</li><li>Token expiration time is subject to change, but is always significantly shorter in the `integ` environment than it is in the `prod` environment.</li></ul> |
40+
| `{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).<br/>Notes:<ul><li>The `integ` environment and the `prod` environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.</li><li>Token expiration time is subject to change, but is always significantly shorter in the `integ` environment than it is in the `prod` environment.</li></ul> |
4141

4242
#### Testing Notes
4343

docs/endpoints/post-token-validate.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import Link from '@docusaurus/Link';
99

1010
# POST /token/validate
1111

12-
Validates that an advertising token matches the specified hashed or unhashed email address or phone number.
12+
Validates that an advertising token matches the specified hashed or unhashed email address or phone number.
1313

1414
Used by: This endpoint is used mainly by publishers.
1515

@@ -21,6 +21,8 @@ This endpoint is intended primarily for testing and troubleshooting new integrat
2121

2222
`POST '{environment}/v2/token/validate'`
2323

24+
For authentication details, see [Authentication and Authorization](../getting-started/gs-auth.md).
25+
2426
:::important
2527
You must encrypt all requests using your secret key. For details, and code examples in different programming languages, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).
2628
:::
@@ -29,7 +31,7 @@ You must encrypt all requests using your secret key. For details, and code examp
2931

3032
| Path Parameter | Data Type | Attribute | Description |
3133
| :--- | :--- | :--- | :--- |
32-
| `{environment}` | string | Required | 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). |
34+
| `{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). |
3335

3436
:::note
3537
The integration environment and the production environment require different <Link href="../ref-info/glossary-uid#gl-api-key">API keys</Link>.

docs/endpoints/summary-endpoints.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ The following endpoints are used by advertisers and third-party data providers.
3535

3636
The following endpoint can be used by advertisers, third-party data providers, DSPs, and sharers. Publishers do not need to use this endpoint.
3737

38+
For details about the UID2 opt-out workflow and how users can opt out, see [User Opt-Out](../getting-started/gs-opt-out.md).
39+
3840
| Endpoint | Description | Request Encryption | Response Decryption |
3941
| :--- | :--- | :--- | :--- |
4042
| [POST&nbsp;/optout/status](post-optout-status.md) | Checks the opt-out status of raw UID2s. This endpoint takes a list of raw UID2s as input, and returns the raw UID2s that have opted out, as well as the time that the opt-out took place. | Required | Required |

0 commit comments

Comments
 (0)