Skip to content

Commit

Permalink
Merge pull request #311 from IABTechLab/gwh-APIDOCS-1749-new-optout-p…
Browse files Browse the repository at this point in the history
…arameter

updates for new optout_check parameter
  • Loading branch information
genwhittTTD authored Oct 10, 2023
2 parents 04058b1 + 6627585 commit aab5eb4
Show file tree
Hide file tree
Showing 10 changed files with 27 additions and 29 deletions.
14 changes: 7 additions & 7 deletions docs/endpoints/post-identity-map.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,15 @@ Here's what you need to know:
### Unencrypted JSON Body Parameters

>IMPORTANT: You must include only **one** of the following four conditional parameters, plus the required `policy` parameter with a value of `1`, as key-value pairs in the JSON body of the request when encrypting it.
>IMPORTANT: You must include only **one** of the following four conditional parameters, plus the required `optout_check` parameter with a value of `1`, as key-value pairs in the JSON body of the request when encrypting it.
| Body Parameter | Data Type | Attribute | Description |
| :--- | :--- | :--- | :--- |
| `email` | string array | Conditionally Required | The list of email addresses to be mapped. |
| `email_hash` | string array | Conditionally Required | The list of [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding.md#email-address-hash-encoding) hashes of [normalized](../getting-started/gs-normalization-encoding.md#email-address-normalization) email addresses to be mapped. |
| `phone` | string array | Conditionally Required | The list of [normalized](../getting-started/gs-normalization-encoding.md#phone-number-normalization) phone numbers to be mapped. |
| `phone_hash` | string array | Conditionally Required | The list of [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding.md#phone-number-hash-encoding) hashes of [normalized](../getting-started/gs-normalization-encoding.md#phone-number-normalization) phone numbers to be mapped. |
| `policy` | integer | Required | The token generation policy ID checks whether the user has opted out. Include this parameter with a value of `1`.|
| `optout_check` | integer | Required | Checks whether the user has opted out. Include this parameter with a value of `1`.|

### Request Examples

Expand All @@ -56,7 +56,7 @@ The following are unencrypted JSON request body examples for each parameter, one
"[email protected]",
"[email protected]"
],
"policy":1
"optout_check":1
}
```
```json
Expand All @@ -65,7 +65,7 @@ The following are unencrypted JSON request body examples for each parameter, one
"eVvLS/Vg+YZ6+z3i0NOpSXYyQAfEXqCZ7BTpAjFUBUc=",
"tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="
],
"policy":1
"optout_check":1
}
```
```json
Expand All @@ -74,7 +74,7 @@ The following are unencrypted JSON request body examples for each parameter, one
"+1111111111",
"+2222222222"
],
"policy":1
"optout_check":1
}
```
```json
Expand All @@ -83,14 +83,14 @@ The following are unencrypted JSON request body examples for each parameter, one
"eVvLS/Vg+YZ6+z3i0NOpSXYyQAfEXqCZ7BTpAjFUBUc=",
"tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="
],
"policy":1
"optout_check":1
}
```

Here's an encrypted identity mapping request example for a phone number:

```sh
echo '{"phone": ["+1111111111", "+2222222222"],"policy":1}' | python3 uid2_request.py https://prod.uidapi.com/v2/identity/map YourTokenBV3tua4BXNw+HVUFpxLlGy8nWN6mtgMlIk= DELPabG/hsJsZk4Xm9Xr10Wb8qoKarg4ochUdY9e+Ow=
echo '{"phone": ["+1111111111", "+2222222222"],"optout_check":1}' | python3 uid2_request.py https://prod.uidapi.com/v2/identity/map YourTokenBV3tua4BXNw+HVUFpxLlGy8nWN6mtgMlIk= DELPabG/hsJsZk4Xm9Xr10Wb8qoKarg4ochUdY9e+Ow=
```

For details and Python script examples, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).
Expand Down
16 changes: 8 additions & 8 deletions docs/endpoints/post-token-generate.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Requests a UID2 token generated from the [DII](../ref-info/glossary-uid.md#gl-di

Used by: This endpoint is used mainly by publishers.

>IMPORTANT: Be sure to call this endpoint only when you have obtained legal basis to convert the user’s DII to UID2 tokens for targeted advertising. The `policy` parameter, required with a value of `1`, checks whether the user has opted out.
>IMPORTANT: Be sure to call this endpoint only when you have obtained legal basis to convert the user’s DII to UID2 tokens for targeted advertising. The `optout_check` parameter, required with a value of `1`, checks whether the user has opted out.
## Request Format

Expand All @@ -30,15 +30,15 @@ Here's what you need to know about this endpoint requests:
### Unencrypted JSON Body Parameters

>IMPORTANT: You must include only **one** of the following four conditional parameters, plus the required `policy` parameter with a value of `1`, as key-value pairs in the JSON body of the request when encrypting it.
>IMPORTANT: You must include only **one** of the following four conditional parameters, plus the required `optout_check` parameter with a value of `1`, as key-value pairs in the JSON body of the request when encrypting it.
| Body Parameter | Data Type | Attribute | Description |
| :--- | :--- | :--- | :--- |
| `email` | string | Conditionally Required | The email address for which to generate tokens. |
| `email_hash` | string | Conditionally Required | The [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding.md#email-address-hash-encoding) hash of a [normalized](../getting-started/gs-normalization-encoding.md#email-address-normalization) email address. |
| `phone` | string | Conditionally Required | The [normalized](../getting-started/gs-normalization-encoding.md#phone-number-normalization) phone number for which to generate tokens. |
| `phone_hash` | string | Conditionally Required | The [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding.md#phone-number-hash-encoding) hash of a [normalized](../getting-started/gs-normalization-encoding.md#phone-number-normalization) phone number. |
| `policy` | number | Required | The token generation policy ID checks whether the user has opted out. Include this parameter with a value of `1`.|
| `optout_check` | number | Required | Checks whether the user has opted out. Include this parameter with a value of `1`.|

### Request Examples

Expand All @@ -49,32 +49,32 @@ The following are unencrypted JSON request body examples for each parameter, one
```json
{
"email": "[email protected]",
"policy": 1
"optout_check": 1
}
```
```json
{
"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ=",
"policy": 1
"optout_check": 1
}
```
```json
{
"phone": "+12345678901",
"policy": 1
"optout_check": 1
}
```
```json
{
"phone_hash": "wdN1alhrbw1Bmz49GzKGdPvGxLhCNn7n3teAOQ/FSK4=",
"policy": 1
"optout_check": 1
}
```

Here's an encrypted token generation request example for an email hash:

```sh
echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ=","policy":1}' | python3 uid2_request.py https://prod.uidapi.com/v2/token/generate [Your-Client-API-Key] [Your-Client-Secret]
echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ=","optout_check":1}' | python3 uid2_request.py https://prod.uidapi.com/v2/token/generate [Your-Client-API-Key] [Your-Client-Secret]
```
For details and Python script examples, see [Encrypting Requests and Decrypting Responses](../getting-started/gs-encryption-decryption.md).

Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started/gs-faqs.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ No, publishers do not need to decrypt [UID2 tokens](../ref-info/glossary-uid.md#
#### How will I be notified of user opt-out?

If the user has opted out, the API response notifies you in either of these cases:
- When you generate the UID2 token by a call to the [POST /token/generate](../endpoints/post-token-generate.md) endpoint, either directly or via one of the UID2 SDKs, using the required `policy` parameter with a value of `1`.
- When you generate the UID2 token by a call to the [POST /token/generate](../endpoints/post-token-generate.md) endpoint, either directly or via one of the UID2 SDKs, using the required `optout_check` parameter with a value of `1`.
- When you refresh the UID2 token by a call to the [POST /token/refresh](../endpoints/post-token-refresh.md) endpoint, either directly or via one of the UID2 SDKs.

#### Where should I make token generation calls—from the server side or the client side?
Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/uid2-sdk-ref-python.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ The following instructions provide an example of how you can implement sharing u

>IMPORTANT: Be sure to call this function only when you have obtained legal basis to convert the user’s [directly identifying information (DII)](../ref-info/glossary-uid.md#gl-dii) to UID2 tokens for targeted advertising.

>`do_not_generate_tokens_for_opted_out()` applies `policy=1` in the [POST /token/generate](../endpoints/post-token-generate.md#token-generation-policy) call. Without this, `policy` is omitted to maintain backwards compatibility.
>`do_not_generate_tokens_for_opted_out()` applies `optout_check=1` in the [POST /token/generate](../endpoints/post-token-generate.md) call. Without this, `optout_check` is omitted to maintain backwards compatibility.

### Standard Integration

Expand Down
2 changes: 1 addition & 1 deletion docs/workflows/workflow-overview-opt-out.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The following steps provide a high-level outline of the workflow intended for us

| Participant | Distribution Method |
| :--- | :--- |
| Publishers | A publisher calling [POST /token/generate](../endpoints/post-token-generate.md) with the required `policy` parameter set to `1`, or [POST /token/refresh](../endpoints/post-token-refresh.md), receives the opt-out response instead of the UID2 token. |
| Publishers | A publisher calling [POST /token/generate](../endpoints/post-token-generate.md) with the required `optout_check` parameter set to `1`, or [POST /token/refresh](../endpoints/post-token-refresh.md), receives the opt-out response instead of the UID2 token. |
| DSPs | The UID2 Operator Service distributes information on all opted-out users to DSPs via a webhook provided for the purpose. For details, see [Honor User Opt-Outs](../guides/dsp-guide#honor-user-opt-outs). |
| Advertisers | The UID2 Operator Service distributes opt-out information to advertisers via the [POST /identity/map](../endpoints/post-identity-map.md) endpoint. |

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
| `email_hash` | string array | 条件付きで必要 | [正規化](../getting-started/gs-normalization-encoding#email-address-hash-encoding) したメールアドレスを [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#email-address-normalization) したリストです。 |
| `phone` | string array | 条件付きで必要 | マッピングする [正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号のリストです。 |
| `phone_hash` | string array | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#phone-number-hash-encoding) した [正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号のリストです。 |
| `policy` | number | オプション | ユーザー識別子がオプトアウトされたときの ID マップの動作をカスタマイズします。詳しくは、[Identity Map Policy](#identity-map-policy) を参照してください。 |
| `optout_check` | number | オプション | ユーザー識別子がオプトアウトされたときの ID マップの動作をカスタマイズします。詳しくは、[Identity Map Policy](#identity-map-policy) を参照してください。 |

### Request Examples

Expand Down Expand Up @@ -138,7 +138,7 @@ echo '{"phone": ["+1111111111", "+2222222222"]}' | python3 uid2_request.py https
}
```

リクエストにパラメータ/値 `policy=1` が含まれ、一部の識別子が UID2 エコシステムからオプトアウトしている場合、オプトアウトした識別子は、見つかった無効な識別子とともに"unmapped"リストに移動されます。この場合でも、応答ステータスは "success" です。
リクエストにパラメータ/値 `optout_check=1` が含まれ、一部の識別子が UID2 エコシステムからオプトアウトしている場合、オプトアウトした識別子は、見つかった無効な識別子とともに"unmapped"リストに移動されます。この場合でも、応答ステータスは "success" です。

```json
{
Expand Down Expand Up @@ -183,7 +183,7 @@ echo '{"phone": ["+1111111111", "+2222222222"]}' | python3 uid2_request.py https

### Identity Map Policy

ID マップポリシーは、トークンを生成するタイミングを呼び出し元が決定できるようにします。これは、リクエストボディに整数値の ID として渡されます (キー 'policy' を使用)。このパラメータが省略された場合、デフォルト値である policy = 0 が適用されます。
ID マップポリシーは、トークンを生成するタイミングを呼び出し元が決定できるようにします。これは、リクエストボディに整数値の ID として渡されます (キー 'policy' を使用)。このパラメータが省略された場合、デフォルト値である optout_check = 0 が適用されます。

| ID | Description |
| :-- | :----------------------------------------------------- |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ UID2 ベースのターゲティング広告にユーザーをオプトインし

Used by: このエンドポイントは、主にパブリッシャーが使用します。

> IMPORTANT: このエンドポイントは、ユーザーの [directly identifying information (DII)](../ref-info/glossary-uid.md#gl-dii) をターゲティング広告用の UID2 Token に変換する法的根拠を得た場合にのみ呼び出すようにしてください。デフォルトでは、このエンドポイントはオプトアウト記録をチェックしません。ユーザーがオプトアウトしたかどうかを確認するには、オプションの `policy` リクエストパラメータに `1` を指定して使用します。
> IMPORTANT: このエンドポイントは、ユーザーの [directly identifying information (DII)](../ref-info/glossary-uid.md#gl-dii) をターゲティング広告用の UID2 Token に変換する法的根拠を得た場合にのみ呼び出すようにしてください。デフォルトでは、このエンドポイントはオプトアウト記録をチェックしません。ユーザーがオプトアウトしたかどうかを確認するには、オプションの `optout_check` リクエストパラメータに `1` を指定して使用します。
## Request Format

Expand Down Expand Up @@ -40,7 +40,7 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
| `email_hash` | string | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#email-address-hash-encoding) した [正規化](../getting-started/gs-normalization-encoding#email-address-normalization) 済みメールアドレスです。 |
| `phone` | string | 条件付きで必要 | トークンを生成する [正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号です。 |
| `phone_hash` | string | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#phone-number-hash-encoding) した、[正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号です。 |
| `policy` | number | オプション | トークン生成ポリシーの ID です。[Token Generation Policy](#token-generation-policy) を参照してください。 |
| `optout_check` | number | オプション | トークン生成ポリシーの ID です。[Token Generation Policy](#token-generation-policy) を参照してください。 |

### Request Examples

Expand Down Expand Up @@ -109,7 +109,7 @@ echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="}' | python3

#### Optout

以下は、`policy`パラメータがリクエストに含まれ、値が`1`で、ユーザーがオプトアウトした場合の応答例です。その他のシナリオでは、ユーザーがオプトアウトした場合、トークンが返されます (上記の [Successful Response](#successful-response) を参照してください)。
以下は、`optout_check`パラメータがリクエストに含まれ、値が`1`で、ユーザーがオプトアウトした場合の応答例です。その他のシナリオでは、ユーザーがオプトアウトした場合、トークンが返されます (上記の [Successful Response](#successful-response) を参照してください)。

```json
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ UID2 フレームワークを使用するパブリッシャーからのよくあ
#### ユーザーの out-out はどのように通知されますか?

ユーザーがオプトアウトした場合、API レスポンスは以下のいずれかのケースで通知します:
- 直接または UID2 SDK のいずれかで [POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを呼び出し、オプションの `policy` パラメータに `1` を指定して UID2 Token を生成した場合。
- 直接または UID2 SDK のいずれかで [POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを呼び出し、オプションの `optout_check` パラメータに `1` を指定して UID2 Token を生成した場合。
- 直接または UID2 SDK のいずれかで [POST /token/refresh](../endpoints/post-token-refresh.md) エンドポイントを呼び出し、UID2 Token をリフレッシュした場合。

#### トークン生成の呼び出しは、サーバーサイドとクライアントサイドのどちらで行うべきですか?
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -166,9 +166,7 @@ UID2 Sharer とは、UID2 を他の参加者と共有したい参加者のこと

>IMPORTANT: この関数は、ターゲティング広告のためにユーザーの [直接識別情報(DII)](../ref-info/glossary-uid.md#gl-dii) を UID2 Token に変換する法的根拠を得た場合にのみ呼び出すようにしてください。

>`do_not_generate_tokens_for_opted_out()` applies `policy=1` in the [POST /token/generate](../endpoints/post-token-generate.md#token-generation-policy) call. Without this, `policy` is omitted to maintain backwards compatibility.

>`do_not_generate_tokens_for_opted_out()` は、[POST /token/generate](../endpoints/post-token-generate.md#token-generation-policy) 呼び出しで `policy=1` を適用します。これがないと、後方互換性を維持するために `policy` が省略されます。
>`do_not_generate_tokens_for_opted_out()` は、[POST /token/generate](../endpoints/post-token-generate.md) 呼び出しで `optout_check=1` を適用します。これがないと、後方互換性を維持するために `optout_check` が省略されます。

### Standard Integration

Expand Down
Loading

0 comments on commit aab5eb4

Please sign in to comment.