API リファレンス
ZEPETO World Open API

オープンAPIで使用するためのJWT認証トークンの作成

12min

オープンAPIリクエストフォーマット

ZEPETOオープンAPIはHTTP経由で呼び出されます。

リクエストにボディが含まれている場合、パラメータはJSON形式で送信する必要があります。 有効なコンテンツタイプの例は以下に示されており、各プログラミング言語のライブラリによって若干の違いがある場合があります。

Text




ZEPETO Studioからアクセスキーとシークレットキーを取得する

JWT認証トークンを作成する前に、ZEPETO Studioコンソールからアクセスキーとシークレットキーを取得する必要があります。

📘 以下のガイドを参照してください。 オープンAPIの管理



JWT認証トークンの作成

ZEPETOオープンAPIは、各リクエストに発行されたアクセスキーとシークレットキーに基づいてJWT(https://jwt.io)形式のトークンを生成し、Authorizationヘッダーに送信します。

署名方法としてHS256が推奨されており、署名に使用する秘密は発行されたシークレットキーです。

JWTトークンのペイロードは次の形式です:

JWTトークンペイロード




  • uri_hashは、ベースパスを除くクエリパラメータを含むuriのハッシュ値です。
  • body_hashは、リクエストボディが存在する場合にのみペイロードに挿入されるように変換されたjson文字列の値であり、リクエストボディが存在しない場合は省略されます。
    • その場合、json文字列のキーと値の間にスペースがあってはなりません。
  • uri_hashとbody_hashは、リクエストに送信されたクエリパラメータとリクエストボディと同じ値にハッシュ化されなければなりません。(値の順序も同じでなければなりません。)
  • APIコールの回数制限:1分間に最大300回のコールが可能です。



リクエストボディがない場合の例

使用したいAPIに従って、アクセスキー、シークレットキー、ワールドID、URI、およびクエリパラメータを入力してください。

以下の例コードは、DataStorageカテゴリのGet Player Data APIに基づいて記述されています。

Java

Java




Python

Python




NodeJS

TypeScript




リクエストボディがある場合の例

使用したいAPIに応じて、アクセスキー、シークレットキー、ワールドID、URI、およびボディパラメータを入力してください。

以下の例コードは、DataStorageカテゴリのSet Player Data APIに基づいて記述されています。

Java

Java




Python

Python




NodeJS

TypeScript






❗️ 注意

  • OpenAPIは、別のWebまたはアプリで使用するために提供される機能です。
  • 現在、ZEPETOサーバースクリプトはZEPETO Open API呼び出しを行うことができません。
  • ZEPETOマルチプレイヤーでOpen API呼び出しを行いたい場合、以下の方法をお勧めします:
    • Open APIと通信して必要なビジネスロジックを実行するために、別のサーバーを設定します。
    • ZEPETOサーバー内で直接通信するために、設定したサーバーと通信するためにhttpServiceパッケージを使用します。
    • HTTP認証ヘッダーを使用するなど、サーバー間で比較的簡単な認証方法を実装して、ZEPETOサーバーによってサポートされている機能内での呼び出しを可能にします。