---
title: "トークンREST API"
slug: "token-rest-api"
abstract: "API Return GraphQL APIのトークンをプログラム的に作成、リスト付け、リネーム、取り消しAPIに使うToken REST APIの参照です。"
---
# トークンREST API

トークンREST APIは、デリバリー GraphQL APIトークンをプログラム的に作成、リスト付け、名前変更、取り消すことができます。APIトークンは長寿命で、セッションベースのトークンではありません。トークンを作成した後は、取り消すまで(追加でAPIに呼び出しながら)使用を続けられます。

なお、Delivery GraphQL APIにアクセスするのにトークンREST APIを使う必要はありません。代わりに、[SitecoreAI Deployで利用可能な認証情報を使用できます](https://doc.sitecore.com/sai/ja/developers/sitecoreai/experience-edge/experience-edge-apis/authorization-and-api-access.html "Authorization and API access")。

トークンREST APIはプレビュー GraphQL APIのトークン管理には使えません。

## 認可およびAPIアクセス

基本的なURLと認証については、[認証およびAPIアクセスオプション](https://doc.sitecore.com/sai/ja/developers/sitecoreai/experience-edge/experience-edge-apis/authorization-and-api-access.html "Authorization and API access")をご覧ください。

## エンドポイント

### 作成

トークンGraphQL API配達を生成します。

APIトークンを生成する際には、オーディエンスおよびコンテンツのスコープを定義しなければなりません。Experience Edgeには以下のスコープが必要です:

-   audience-delivery - デリバリー GraphQL APIへのアクセスを許可します。
-   content-#everything# - すべてのコンテンツへのアクセスを許可する。

追加のスコープやスコープタイプを作成することはできません。

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1
-   HTTP動詞: POST
-   リクエスト本文:以下のJSONリクエスト本文を使用し、プレースホルダーをSitecoreメールアドレス(例えば john.doe@sitecore.com)に置き換えてください:

{
 "CreatedBy": "<YOUR\_SITECORE\_USER\_EMAIL>",
 "Label": "<DESCRIPTIVE\_LABEL>",
 "Scopes": "audience-delivery", "content-#everything#"
}

-   レスポンス:レスポンスはGraphQL Delivery APIトークンです。APIトークンの使い方とタイミングを確認してください。
-   例:以下の例は audience-deliveryの範囲を要求しています。これは、返された sc\_apikey がデリバリー GraphQL APIに対して有効であることを意味します。

{
 "CreatedBy": "john.doe@sitecore.com",
 "Label": "Testing Access",
 "Scopes": 
 "audience-delivery",
 "content-#everything#"
 
}

### リストオール

環境内のすべてのAPIトークンに関する情報を一覧にします。

トークン自体は返されませんが、環境ID、取り消しステータス、ラベル、スコープ、作成日、トークン作成ユーザー、トークンハッシュなどの情報が返されます。

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1
-   HTTP動詞: GET
-   オプションのクエリ文字列パラメータ:
    -   scopes (array of strings) - 返却されたAPIトークンのスコープを定義します。提供されない場合は、すべてのAPIトークンが返されます。利用可能なスコープは audience-delivery と content-#everything#です。
    -   label (string) - APIトークンをフィルタリングするためのラベルまたはその一部を定義します。この文字列を含むすべてのAPIトークンの情報が返されます。提供されない場合は、すべてのAPIトークンに関する情報が返されます。
    -   pagesize (integer) - ページあたり情報が返されるAPIトークンの数を定義します。デフォルト: 20。
    -   pagenumber (integer)- 返すページ番号を定義します。デフォルト: 1。
    -   filterRevoked (boolean) - コールがすべてのAPIトークンの情報を返すのか、それとも取り消されていないアクティブなトークンのみを返すのかを定義します。

パラメータを用いてクエリを行う際、以下の例構造を用いてください。

https://edge.sitecorecloud.io/api/apikey/v1?scopes=audience-delivery&label=mine&filterRevoked=true&pagesize=50&pagenumber=3

> !注scopesパラメータは列挙可能です。クエリ文字列に複数回現れることがあります。

-   レスポンス:レスポンスは、クエリ文字列パラメータとして提供されるフィルターやページング設定を満たす DeliveryApiKey の配列です。

{
 "totalCount": 2,
 "pageSize": 20,
 "currentPage": 1,
 "totalPages": 1,
 "hasNext": false,
 "hasPrevious": false,
 "keys": 
 {
 "TenantId": "<ENVIRONMENT\_ID>",
 "Hash": "1b84...",
 "IsRevoked": false,
 "Label": "Example descriptive label",
 "Scopes": "scope1", "scope2",
 "CreatedBy": "john.doe@sitecore.com",
 "Created": "2020-12-02"
 },
 {
 "TenantId": "<ENVIRONMENT\_ID>",
 "Hash": "example\_hash\_2",
 "IsRevoked": false,
 "Label": "Example descriptive label 2",
 "Scopes": "scope3", "scope4",
 "CreatedBy": "jane.doe@sitecore.com",
 "Created": "2020-12-02"
 }
 
}

### GetApiKeyByHash

単一のAPIトークンに関する情報をハッシュ値で取得します。

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1/<HASH>
-   HTTP動詞: GET
-   ルートパラメータ:
    -   hash (string)- 情報を取得するためのAPIトークンのハッシュ。
-   応答:応答はトークンに対応する DeliveryApiKey です:

{
 "TenantId": "<ENVIRONMENT\_ID>",
 "Hash": "example\_hash",
 "IsRevoked": false,
 "Label": "Example descriptive label",
 "Scopes": "scope1", "scope2",
 "CreatedBy": "john.doe@sitecore.com",
 "Created": "2020-12-02"
}

### GetApiKeyByToken

トークンによって識別された単一のAPIトークンの詳細を取得する:

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1/token
-   HTTP動詞: GET
-   必須ヘッダー:
    -   sc\_apikey (string)- 情報取得GraphQL APIトークンのデリバリー。
-   応答:応答はトークンに対応する DeliveryApiKey です:

 {
 "TenantId": "<ENVIRONMENT\_ID>",
 "Hash": "example\_hash",
 "IsRevoked": false,
 "Label": "Example descriptive label",
 "Scopes": "scope1", "scope2",
 "CreatedBy": "ADN",
 "Created": "2020-12-02"
 }

### リネームByHash

トークンのハッシュ値で識別されるAPIトークンのlabelを更新します:

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1/renamebyhash/<HASH>
-   HTTP動詞: PUT
-   ルートパラメータ:
    -   hash (string)- 名前を変更するAPIトークンのハッシュ。
-   リクエスト本文:リクエスト本体には以下のフィールドが含まれなければなりません:
    -   newName (string)- APIトークンの新しいラベルだ。

例:

{
 "newName": "new-label"
}

-   回答: 204 No Content は成功した申請を示します。

### RenameByToken(リネーム・バイ・トークン)

トークン自体で識別されたAPIトークンのlabelを更新します。

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1/renamebytoken
-   HTTP動詞: PUT
-   必須ヘッダー:
    -   sc\_apikey (string)- 情報取得GraphQL APIトークンのデリバリー。
-   リクエスト本文:リクエスト本体には以下のフィールドが含まれなければなりません:
    -   newName (string)- APIトークンの新しいラベルだ。

例:

{
 "newName": "new-label"
}

-   回答: 204 No Content は成功した申請を示します。

### リヴォークバイハッシュ

ハッシュ値で識別されるAPIトークンを取り消す:

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1/revokebyhash/<HASH>
-   HTTP動詞: PUT
-   ルートパラメータ:
    -   hash (string)- APIトークンのハッシュを解除する。
-   回答: 204 No Content は成功した申請を示します。

> !重要Delivery GraphQL APIトークンを取り消すと、環境に関連付けられたコンテキストIDが無効化されることがあります。トークンを取り消した後にリクエストが401 Unauthorized応答を返し始めたらExperience Edge環境 [のコンテキストIDを再生成](https://doc.sitecore.com/sai/ja/developers/sitecoreai/deploying-sitecoreai/deploy-app/manage-an-environment/context-id-environment-variables.html#regenerate-an-environments-context-ids)し、古いコンテキストIDを使用するすべてのアプリケーションやサービスを更新し、環境を再デプロイしてください。

### RevokeByToken

トークン自体で識別されたAPIトークンを取り消します。

-   ルート: https://edge.sitecorecloud.io/api/apikey/v1/revokebytoken
-   HTTP動詞: PUT
-   必須ヘッダー:
    -   sc\_apikey (string)- 情報取得GraphQL APIトークンのデリバリー。
-   回答: 204 No Content は成功した申請を示します。

> !重要Delivery GraphQL APIトークンを取り消すと、環境に関連付けられたコンテキストIDが無効化されることがあります。トークンを取り消した後にリクエストが401 Unauthorized応答を返し始めたらExperience Edge環境 [のコンテキストIDを再生成](https://doc.sitecore.com/sai/ja/developers/sitecoreai/deploying-sitecoreai/deploy-app/manage-an-environment/context-id-environment-variables.html#regenerate-an-environments-context-ids)し、古いコンテキストIDを使用するすべてのアプリケーションやサービスを更新し、環境を再デプロイしてください。