コンテンツにスキップ
JP

インテグレーションAPI を使ってデータを公開する

更新日

インテグレーションAPI からアイテムを登録した直後は、ステータスが 下書き の状態になっています。パブリックAPI などで公開データとして取得できるようにするには、ステータスを 公開 に変更する必要があります。

  1. 作成したアイテムの ID を取得します
  2. 公開エンドポイントにリクエストを送り、ステータスを公開に変更します

指定した ID のアイテムを公開するサンプルコード

Section titled “指定した ID のアイテムを公開するサンプルコード”
Terminal window
curl -X POST \
'https://api.cms.reearth.io/api/<workspace>/projects/<project>/models/<model>/items/<item-id>/publish' \
--header 'Authorization: Bearer <your_integration_token>'

アイテムの作成から公開まで一括で行うサンプルコード

Section titled “アイテムの作成から公開まで一括で行うサンプルコード”

アイテムの作成と公開を続けて行う場合は、作成時に返ってくるアイテム ID をそのまま公開リクエストに使います。

const WORKSPACE_ID = "<workspace_id_or_alias>";
const PROJECT_ID = "<project_id_or_alias>";
const MODEL_ID = "<model_id_or_key>";
const TOKEN = "<your_integration_token>";
const baseUrl = `https://api.cms.reearth.io/api/${WORKSPACE_ID}/projects/${PROJECT_ID}`;
// 1. アイテムを作成する
const createResp = await fetch(`${baseUrl}/models/${MODEL_ID}/items`, {
method: "POST",
headers: {
Authorization: `Bearer ${TOKEN}`,
"Content-Type": "application/json",
Accept: "application/json",
},
body: JSON.stringify({
fields: [
{ key: "name", type: "text", value: "サンプル" },
],
}),
});
if (!createResp.ok) throw new Error(`作成失敗: HTTP ${createResp.status}`);
const item = await createResp.json();
// 2. 作成したアイテムを公開する
const publishResp = await fetch(`${baseUrl}/models/${MODEL_ID}/items/${item.id}/publish`, {
method: "POST",
headers: {
Authorization: `Bearer ${TOKEN}`,
Accept: "application/json",
},
});
if (!publishResp.ok) throw new Error(`公開失敗: HTTP ${publishResp.status}`);
console.log("作成・公開が完了しました");

公開前は、ステータスが 下書き になっています。

公開前のアイテム。ステータスが下書きになっている

公開エンドポイントを呼び出すと、ステータスが 公開 に変わり、パブリックAPI から取得できるようになります。

インテグレーションAPI で公開後のアイテム。ステータスが Published になっている

エンドポイントの詳細な仕様については、インテグレーションAPIリファレンス を参照してください。