---
title: "APIキーを作成する"
slug: "create-the-api-key"
abstract: "Experience Edge for XM認証キーの作成方法を学びましょう。"
---
# APIキーを作成する

Experience Edge for XMは複数のAPIを持ち、認証には2つの異なるメカニズムを使用しています。Delivery API以外のExperience Edgeで保護されたAPIのいずれかで操作を実行するには、呼び出しシステムはまず[JSON Web Token形式の認証トークンを取得し](https://doc.sitecore.com/xp/ja/developers/hd/19/sitecore-headless-development/request-a-jwt-for-experience-edge-xm-using-oauth.html "Request a JWT for Experience Edge XM using OAuth")なければなりません。Delivery IDEとPreview IDEを使用する前に、APIキーを作成しなければなりません。

## Delivery IDEのAPIキーを作成する

デリバリー API IDEはデリバリー APIを使用します。デリバリー APIはデリバリープラットフォーム上でホストされるGraphQL APIで、承認済みかつ公開されたコンテンツのみへのアクセスを提供します。デリバリー APIへのすべてのリクエストにはAPIキーで認証する必要があります。

> !重要APIキーを作成する前に[OAuthを使ってJWTを取得し](https://doc.sitecore.com/xp/ja/developers/hd/19/sitecore-headless-development/request-a-jwt-for-experience-edge-xm-using-oauth.html "Request a JWT for Experience Edge XM using OAuth") てください。

APIキーを作成するには:

-   create endpointを呼び出してAPIキーを作成します。必ずスコープを提供し、以下を追加してください:
    
    -   “content-#everything#”
    -   “audience-delivery”
    
    > !警告このトークンは必ず安全な場所に保存してください。Sitecoreはこのトークンを保存しておらず、作成後にシステムからトークンを取り出すことはできません。
    
    curl --request POST --url "https://edge.sitecorecloud.io/api/apikey/v1" --header "content-type: application/json" --header "Authorization: Bearer <JWT token>" --data "{ \\"CreatedBy\\":\\"ADN\\", \\"Label\\":\\"Website token\\", \\"Scopes\\": \\"content-#everything#\\", \\"audience-delivery\\" }"
    
    レスポンスはsc\_apikeyヘッダーで渡されるべきAPIキーのトークンです。
    

## プレビュー IDEのAPIキーを作成する

プレビュー API IDEはDelivery IDEと同じ機能を提供しますが、セルフホストのSitecore XMインスタンスのプレビュー APIに対して実行されます。PreviewエンドポイントのテストテストUIを使ってクエリをテストできます。セルフホストのSitecore XMインスタンスのプレビューエンドポイント(/sitecore/api/graph/edge)はデフォルトで有効化されています。ただし、APIキーを作成し、GraphQLリクエストで渡す必要があります。

APIキーを作成するには:

1.  [Sitecore ServicesクライアントAPIキーを作成します](https://doc.sitecore.com/xp/en/developers/101/sitecore-experience-manager/api-keys-for-the-odata-item-service.html)。
    
    > !注すでにAPIキーを持っている場合もあります。例えば、Next.js dotnet newテンプレートのようなGetting Startedテンプレートを使っている場合などです。Experience Edgeプレビュースキーマでしか使えないAPIキーを作成したい場合は、Allowed Controllers欄で以下を指定してください。 Sitecore.Services.GraphQL.Hosting.Mvc.GraphQLController;GraphQL:/sitecore/api/graph/edge
    
2.  トークンを生成したら、リクエストのヘッダーにAPIトークンを渡さなければなりません。HTTPヘッダーをクリックし、以下の形式でトークンを追加してください: {"sc\_apikey": "YOUR\_TOKEN"} これでデータをクエリし、結果が返ってくるのを見ることができます。
    
    > !注Sitecore Services ClientおよびSitecore GraphQLもクエリ文字列を通じてAPIキーを受け入れています。ただし、sc\_apikey HTTPヘッダーの使用を推奨します。これはExperience Edgeの動作を反映するためです。