ContentfulはAPIが用途に応じて分かれている。
Contentfulから公開スケジュールなどスケジュール関係を取得したい場合は、Content Management API のScheduled Actions
を利用する。
Content Management API
Contentful’s Content Management API (CMA) helps you manage content in your spaces | Authentication | API rate limits | Spaces | Environments | Content types
JavaScript SDK が提供されているので、今回はそれを使う方法を記載する。
目次
JavaScript SDK のインストール
contentful-management
をインストールします。
npm install contentful-management
環境情報の取得
事前にContentfulの環境情報を取得します。
<accessToken> | Personal access tokens を生成します。 https://app.contentful.com/account/profile/cma_tokens 公式サイトはこちらです。 https://www.contentful.com/help/personal-access-tokens/ |
<spaceId> | space id を取得します。スペースのページにいき、URLから取得します。 https://app.contentful.com/spaces/<spaceId>/home |
<environtmentId> | Contentfulページの Settings > Environments から取得します。 |
公開予定スケジュール一覧を取得する
指定する sys.status で scheduled を指定して、公開予定スケジュールを取得します。
const contentful = require("contentful-management");
const client = contentful.createClient({
accessToken: <accessToken>,
});
const space = await client.getSpace(<spaceId>);
return space.getScheduledActions({
"environment.sys.id": <environmentId>,
"sys.status": "scheduled",
});
GitHubには使用方法や、データ取得方法の記載があるので一読おすすめです。
GitHub – contentful/contentful-management.js: JavaScript library for Contentful’s Management API (no…
JavaScript library for Contentful’s Management API (node & browser) – contentful/contentful-management.js