パーム油 現物価格履歴 API
パーム油 の観測値を古い順に取得
エンドポイントとリクエスト
REST エンドポイント
GET /v1/commodities/palmoil/physical/{series_id}/observations契約リクエスト
curl --request GET \
--url "https://api.narwhalapi.com/v1/commodities/palmoil/physical/id-ri-oil-palm-ffb-smallholder-purchase-agreement/observations?start=2026-08-01&end=2026-09-02&limit=100" \
--header "Authorization: Bearer $NARWHAL_API_KEY"MCPの使用 commodities_get_palmoil_physical_observationsです。REST と MCP は、スキーマ、アカウントのクォータ、権限チェック、エラー形式を共有します。
パラメータ
| 名前 | 必須 | 種別 | 意味 |
|---|---|---|---|
series_id | はい | パス · 固定のNarwhal ID | 検索APIが返す系列。 |
start | いいえ | クエリ · YYYY-MM-DD | 検索範囲の開始日で、その日を含みます。endと必ず一緒に指定してください。インドネシア価格は適用期間が検索範囲と重なる場合に取得されます。マレーシアの日次価格はレポート日で選択されます。 |
end | いいえ | クエリ · YYYY-MM-DD | 排他的な上限。start より後でなければなりません。 |
limit | いいえ | クエリ · 整数、1~500 | 返す観測値の最大件数。既定は100件です。樹齢別価格表は分割せず完全な形で返します。 |
cursor | いいえ | クエリ · 不透明な文字列 | 次のページでもseries_id、日付、limit、price_monthを含む元の全パラメーターを変更しないでください。公開データが変わるとカーソルが失効する場合があります。 |
price_month | いいえ | クエリ · YYYY-MM | MPOB CPO専用です。価格対象月を1つ選択します。既定では各レポート自身の月を使用します。 |
レスポンス
契約例
{
"series_id": "id-ri-oil-palm-ffb-smallholder-purchase-agreement",
"currency": "IDR",
"unit": "kilogram",
"observations": [
{
"period_start": "2026-08-26",
"period_end": "2026-09-01",
"revision": 1,
"prices": [
{
"tree_age_min_years": 3,
"tree_age_max_years": 3,
"price": "2998.31"
},
{
"tree_age_min_years": 4,
"tree_age_max_years": 4,
"price": "3347.20"
},
{
"tree_age_min_years": 5,
"tree_age_max_years": 5,
"price": "3595.38"
},
{
"tree_age_min_years": 6,
"tree_age_max_years": 6,
"price": "3734.94"
},
{
"tree_age_min_years": 7,
"tree_age_max_years": 7,
"price": "3818.86"
},
{
"tree_age_min_years": 8,
"tree_age_max_years": 8,
"price": "3865.46"
},
{
"tree_age_min_years": 9,
"tree_age_max_years": 9,
"price": "3878.72"
},
{
"tree_age_min_years": 10,
"tree_age_max_years": 20,
"price": "3836.93"
},
{
"tree_age_min_years": 21,
"tree_age_max_years": 21,
"price": "3770.94"
},
{
"tree_age_min_years": 22,
"tree_age_max_years": 22,
"price": "3695.31"
},
{
"tree_age_min_years": 23,
"tree_age_max_years": 23,
"price": "3609.33"
},
{
"tree_age_min_years": 24,
"tree_age_max_years": 24,
"price": "3544.29"
},
{
"tree_age_min_years": 25,
"tree_age_max_years": 25,
"price": "3490.84"
},
{
"tree_age_min_years": 26,
"tree_age_max_years": 26,
"price": "3471.62"
},
{
"tree_age_min_years": 27,
"tree_age_max_years": 27,
"price": "3441.82"
},
{
"tree_age_min_years": 28,
"tree_age_max_years": 28,
"price": "3385.41"
},
{
"tree_age_min_years": 29,
"tree_age_max_years": 29,
"price": "3344.02"
},
{
"tree_age_min_years": 30,
"tree_age_max_years": 30,
"price": "3249.41"
}
]
}
],
"next_cursor": null
}| フィールド | 種別 | 必須 | 意味 |
|---|---|---|---|
series_id | 文字列 | はい | 安定した現物系列の識別情報。 |
currency / unit | 文字列 | はい | すべての観測値に共通する通貨と元の単位。 |
observations | 配列 | はい | 期間、改訂番号、単一の価格または完全な価格表を古い順に返します。MPOB CPOの行はprice_monthを保持し、マレーシアCPO・FFBの行はレポート日に対応するperiod_start/period_endを保持します。 |
next_cursor | 文字列または null | はい | 不透明な継続トークン、または末尾では null。 |
エラーとクォータ
400 invalid_query— コード、地域、日付範囲、上限、セレクターが無効です。400 invalid_cursor— カーソルが無効、または系列と範囲に一致しません。401 invalid_api_key— Bearer キーがないか拒否されました。403 plan_upgrade_required— 指定した期間または開始が、プランの履歴対象期間(Freeは12か月、Basicは5年、Proは全期間)より前です。404 palmoil_series_not_found— リクエストに一致する完全な承認済みデータがありません。409 cursor_expired, 公開データが変更されました。カーソルを指定せずにページ取得をやり直してください。429 rate_limit_exceededまたはquota_exhausted— 共有枠を使い切りました。503 palmoil_unavailable— 完全な公開データでインターフェースを安全に満たせません。
拒否されたリクエストとサーバーエラーは月間クォータを消費しません。
カバレッジ
受入済みの履歴は系列により異なります。マレーシアのアーカイブには明示されたレポートの欠落があり、インドネシアのFFBの収録範囲は地域により異なります。
Narwhal APIキーで利用できます。
ドキュメント