---
title: "ウォークスルー:オーサリングおよび管理APIへのリクエストの有効化と承認"
slug: "walkthrough--enabling-and-authorizing-requests-to-the-authoring-and-management-api"
abstract: "GraphQL IDE作成および管理GraphQL APIに対して操作を実行できるようにします。"
---
# ウォークスルー:オーサリングおよび管理APIへのリクエストの有効化と承認

オーサリングおよび管理APIは、インタラクティブなブラウザベースのGraphQL IDEやHTTPリクエストを通じて探索できます。

GraphQL Authoring and Management APIプログラムやGraphQL IDEを使ったクエリには承認が必要です。

このウォークスルーでは、以下の方法を説明します:

-   GraphQL IDEを有効にしてください。
-   アクセストークンを取得してください。
-   追加のアクセストークン(任意)を取得してください。
-   GraphQL IDEを承認しろ。
-   HTTPリクエストを承認します。

> !注このウォークスルーは、PowerShell 7以降のコマンドを実行していることを前提としています。以前のバージョンではPowerShell curlコマンドを正しく解釈できず、[ここで](https://blog.peplau.com.br/error-enabling-graphql-ide-on-xm-cloud/)説明したようなエラーが発生することがあります。問題が発生した場合は、PowerShell 7以降を使用しているか、curl対応端末(Git BashやWSLなど)で直接コマンドを実行してください。

## GraphQL IDEを有効にしてください

GraphQL IDEを使うには、設定で有効にする必要があります。最低でも*sitecore\\Sitecore Client Users*の役割は持っている必要があります。

> !注このGraphQL IDEは開発および探索的な利用を支援することを目的としており、GraphQL APIの通常の運用には必須ではありません。

GraphQL IDEを有効にするために:

1.  Deployでtrue値のSitecore\_GraphQL\_ExposePlaygroundという環境変数を作成します。すでに存在している場合は、環境変数の値をtrueに更新してください。
2.  環境変数を発動させるには、環境を再デプロイしてください。

## アクセストークンを取得する

GraphQL IDEを承認するためにアクセストークンを取得する必要があります。または、Authoring and Management APIエンドポイントに対して操作を行うにはHTTPリクエストを承認する必要があります。

アクセストークンを取得するには:

1.  Sitecore CLIの dotnet sitecore cloud login コマンドを実行し、プロンプトに従って環境にログインしてください。
2.  ログインすると、プロセスはアクセストークンを保存し、GraphQL IDEやHTTPリクエストに必要なAuthorizationヘッダーを設定するために使えます。 ./sitecore/user.json ファイルから accessToken プロパティの値をコピーし、後で使うために保存します。

追加のトークンや自動化クライアントが必要ない場合は、GraphQL IDEの承認を続けてください。

## 追加のアクセストークンを取得する(任意)

複数のトークンや自動化クライアントを使いたい場合、例えばHTTPリクエスト用とGraphQL IDE用など、追加のトークンを生成することも可能です。

> !注**XM Cloudは現在SitecoreAIです**。エンジニアリング資産が更新されている間、一部のコード例、画像、UIラベルはXM Cloudを使用している場合があります。

追加のアクセストークンを取得するには:

1.  環境に合った自動化クライアントを作成しましょう。デフォルトでは、権威URLはhttps://auth.sitecorecloud.io、オーディエンスURLはhttps://api.sitecorecloud.ioです。
    
2.  以下のコマンドでベアラートークンをリクエストします:
    
    curl --location --request POST '<authority-url>/oauth/token' --header 'Content-Type: application/x-www-form-urlencoded' --data-urlencode 'client\_id=<your-client-id>' --data-urlencode 'client\_secret=<your-client-secret>' --data-urlencode 'audience=<audience-url>' --data-urlencode 'grant\_type=client\_credentials'
    
    プレースホルダーは以下のように置き換えます:
    
    -   <authority-url>\- .sitecore/user.jsonファイルのendpoints.xmCloud.authority値。
    -   <your-client-id>\- .sitecore/user.jsonファイルのendpoints.xmCloud.clientId値。
    -   <your-client-secret>\- .sitecore/user.jsonファイルのendpoints.xmCloud.clientSecret値。
    -   <audience-url>\- .sitecore/user.jsonファイルのendpoints.xmCloud.audience値。
    
    成功した場合、応答はコンソールに印刷されます。
    
    {
     "access\_token":"eyJhbGciOiJSUzI1NiIs...",
     "scope":"xmcloud.cm:admin",
     "expires\_in":900,
     "token\_type":"Bearer"
    }
    
3.  レスポンスから引用符なしのaccess\_token値をコピーし、トークンを後で使うために保存してください。
    

> !重要回答の性質expires\_inに注意を払ってください。これはJWTトークンの有効期限を示しています。それ以降はトークンが無効となり、新しいトークンを申請しなければなりません。

## GraphQL IDEを許可しろ

GraphQL IDEでクエリやミューテーションを行う前に、IDEに操作を許可する必要があります。

GraphQL IDEの正しいヘッダーを設定するには:

1.  ブラウザでIDEをhttps://<your-server>/sitecore/api/authoring/graphql/ide/開いてください。
    
2.  IDEの左下ペインの**HTTPヘッダー** タブで、以下のフォーマットで認可ヘッダーを追加してください:
    
    {
     "Authorization": "Bearer <access-token>"
    }
    
    <access-token>のプレースホルダーをコピーした値に置き換えてください。
    
3.  IDEのエンドポイントフィールド( **履歴** タブの右側)で、エンドポイントがhttps://<your-instance>/sitecore/api/authoring/graphql/v1/であることを確認します。
    
4.  セットアップをクエリで確認してください。例えば:
    
    query {
     sites {
     name
     }
    }
    
    設定が正しければ、回答にはあなたのウェブサイトのリストが含まれています。例えば:
    
    {
     "data": {
     "sites": 
     {
     "name": "Winter Wonderland"
     },
     {
     "name": "website"
     }
     
     }
    }
    

## HTTPリクエストを認可する

Authoring and Management APIエンドポイントに対するHTTPリクエストには認可が必要です。

HTTPリクエストを承認するには:

-   Bearer認証方式にHTTP Authorizationヘッダーを含めてください。<access-token>のプレースホルダーをアクセストークンの値に置き換えます。例えば:
    
    {
     headers: 
     { "Authorization": "Bearer <access-token>" }
     
    }