メインコンテンツにスキップ
Adaptive Planning
最終更新: 2024-05-03
概念: JSON 形式の API

概念: JSON 形式の API

Adaptive Planning からデータを送信および取得するために JSON 形式を使用できる Adaptive Planning REST API は限られています。今後のリリースでは、JSON 形式を使用する API が増えます。

JSON リクエスト

各 JSON リクエストには、以下が必要です。
  • HTTP 動詞またはメソッド
    例:
    GET
    ,
    PUT
    、または
    PATCH
  • URL エンドポイント
    インスタンスが米国以外の地域の認証を使用している場合、認証 URL と API エンドポイントは地域によって異なります。参照 参考: 地域認証 URL
    例:
    HTTPS://api.adaptiveplanning.com/api/rest/modeling/v1/globosales/sheet/availability
  • 認証ヘッダー
    例:
    --header 'Authorization: Basic c5RldmVjQLdsb2JvLmNabTpjaGFuZ2VtZQ=='

HTTP 動詞またはメソッド

使用可能なメソッドや動詞は、サービスやリソースによって異なります。
方法
説明
GET
データの集合または単一のオブジェクトを取得します。
POST
指定されたデータで単一データ インスタンスを作成します。
PATCH
既存のデータを部分的に更新します。
入力
既存のデータを更新し、既存のデータをリクエスト本文の指定されたデータに置き換えます。
DELETE
既存のデータ インスタンスを削除します。

URL エンドポイント

インスタンスが米国以外の地域の認証を使用している場合、認証 URL と API エンドポイントは地域によって異なります。参照 参考: 地域認証 URL
https://api.adaptiveplanning.com/rest/<service name>/<version>/<tenant>/<resource path>
  • service name
    コンポーネント名 (以下のような機能に基づく)
    modeling
    、または
    security
  • version
    サービスのバージョン。すべてのサービスの現在のバージョン:
    v1
  • tenant
    このサービスのテナント。Adaptive Planning インスタンスを示します。用途
    default
    認証内のユーザーのデフォルト インスタンス
  • resource path
    リソースへのパス (次のような名詞を使用)。
    sheet
    および
    availability
    。このパスは、以下のようなクエリー パラメータもサポートします。
    • sheetName
      Adaptive Planning でシートの名前を指定します。
    • columnName
      Adaptive Planning シートの列の名前を指定します。
    • limit
      をクリックし、単一の回答に含めるオブジェクト データ エントリの制限を指定します。
    • offset
      をクリックし、回答に含めるコレクション内の最初のオブジェクトに対するオフセットを指定します。
例:
https://api.adaptiveplanning.com/api/rest/modeling/v1/globosales/sheet/availability?sheetName=Expense Cube&columnName=Level&columnType=Level

例: JSON 本文の POST リクエスト

curl --location --request POST 'https://api.adaptiveplanning.com/api/rest/modeling/v1/default/sheet/availability?sheetName=Sales Cube&columnName=account&columnType=Account' \ --header 'Authorization: Basic c5RldmVjQLdsb2JvLmNabTpjaGFuZ2VtZQ==' \ --header 'Content-Type: application/json' \ --data-raw '[ { "name": "Discount Percent", "code": "SalesCube.DiscountPercent", "accountGroup": false, "available": true } ]'

回収

リソースは通常、次のビジネス オブジェクトの集合を表します。
Adaptive Planning
が JSON コレクションとして返されました。このコレクションを開発フレームワークで使用して、ビジネス オブジェクトのリストを作成できます。コレクション内の特定のオブジェクトへのアクセスは、識別子によって行われます。
コレクション内のオブジェクトのソート順は次のように設定されます。
Adaptive Planning
であり、設定できません。
コレクションのページングは、2 つのオプションのクエリー パラメータ ( limit と offset) によって制御されます。
クエリー パラメータ
説明
limit
単一の回答に含まれるオブジェクト データ エントリの制限。デフォルト値は 20 で、最大値は 100 です。
offset
レスポンスに含めるコレクション内の最初のオブジェクトに対するオフセット。デフォルトは 0 です。

制限と相殺のあるリクエストの例

このサンプルでは、次のようにユーザー インスタンスのコレクションを取得します。
instanceCode
GLOBO
@GET @PATH("/users/instances?instanceCode=GLOBO&limit=20&offset=0") @Produces(MediaType.APPLICATION_JSON) public List<User> getUsers(@PathParam("instanceCode") String instanceCode,@PathParam("limit")int limit,@PathParam("offset")int offset)

制限とオフセットを使用した回答例

{ "total": 25, "link": { "next": "https://api.adaptiveplanning.com/api/rest/security/v1/default/users/instances?instanceCode=GLOBO&offset=4&limit=2", "previous": "https://api.adaptiveplanning.com/api/rest/security/v1/default/users/instances?instanceCode=GLOBO&offset=0&limit=2" }, "users": [ { "userId": 14, "userGuid": "474C4F424F000000000000000100000E", "userName": "asiaboss@globo.com", "instances": [ { "code": "GLOBO", "default": true } ] }, { "userId": 21, "userGuid": "474C4F424F0000000000000001000015", "userName": "Bob@globo.com", "instances": [ { "code": "GLOBOSALES" }, { "code": "GLOBOSUB" }, { "code": "GLOBO", "default": true } ] } ] } Note: -Default offset = 0 and limit = 500

認証情報タイプ、認証、および認可

すべての API リクエストはステートレスで、単一アクションのリクエストです。ユーザーは呼び出しごとに認証される必要があるため、既存の Web サービス セッションをハイハイする不正者が存在することはあり得ません。
API リクエストでユーザーを認証しても、このユーザーの永続的なセッションは作成されません。Web サービスの呼び出しごとに、ユーザーを個別に認証する必要があります。
設定
Adaptive Planning
JSON 形式の API は、基本とトークンベースの認証 (TBA) の両方の方法をサポートします。
Adaptive Planning
JSON 形式で真の REST API をサポートし、XML API のようなリクエスト本文ではなく、リクエスト ヘッダーに認証が示されます。XML API の例については、リクエストと応答のメッセージ形式および Workday 認証情報を使用した Adaptive Planning API リクエストを参照してください

基本認証

基本認証は、認証ヘッダーで Base64 でエンコードされたユーザー名とパスワードを使用します。
例:
'Authorization': 'Basic <insert base64 encoded string>'
例:
xyz@demo.com:password
にエンコード
eHl6QGRlbW8uY29tOnBhc3N3b3Jk

トークンベースの認証 (TBA)

ユーザーを Workday から Adaptive Planning に同期させる場合、 を使用する必要があります (トークンベースの認証方法を使用)。トークンを取得するには、「Workday 認証情報を使用した Adaptive Planning API リクエストを実行する」のステップに従ってください。トークンを取得したら、ヘッダーでトークンを渡します。
例: "authorization": "Bearer <insert token Here>"
例: 「
Authorization: Bearer eyJjdHkiOiJ0ZXh0L3BsYWluIiwiYWxnIjoiSFMyNTYifQ.eyJsb2dpbl9pZCI6InN0ZXZlY0BheWdsb2JvLmNvbSIsIm5iZiI6MTU4NjEzMDA2NywibXVsdGlfdXNlIjoiMCIsImlzX2F1dGgiOiIxIiwiZXhwIjoxODg2MTMwMTg3LCJpYXQiOjE2MDM5NDYwMjEsImp0aSI6IjM0YzFkZDY2LTY2MTMtNDk0Ny05MjFhLTliZDQ2ZDVmZDkwNyJ9.FZnLHGQ3dNfpzvW-A9ILi53z6YLGNNI45Mlc-4NT3As'