コンテンツにスキップ

クイックスタート

このページは 5 分で API を 1 回叩くまで 進める最短コースです。SDK の細かい仕様は 認証フロー や個別の API リファレンス を参照してください。

[1] アプリを登録 → client_id / client_secret を取得
[2] アプリを「テスト環境」で開く → uid / state を取得
[3] uid + client_id + client_secret で access_token を取得
[4] access_token を付けて API (例: 商品マスタ検索) を叩く
[5] アクセスが切れたら refresh_token で再発行

ステップ 1〜2 はネクストエンジン管理画面で 1 回だけ行う準備、ステップ 3〜5 がアプリの実装範囲です。

  1. ネクストエンジンアカウント作成ページ でアカウント作成 (既にある方は次へ)
  2. アプリを作る」から新規アプリを登録
  3. 登録完了後、編集画面の API タブから:
    • テスト環境設定client_id / client_secret
    • Redirect URI (後で https://example.com/callback などに設定)

を控えます。

テスト環境: アプリ申請前に試せる開発用環境。client_id/client_secret は本番と別物。

ステップ 2: uid / state を取得 (1 分)

Section titled “ステップ 2: uid / state を取得 (1 分)”

ブラウザで以下にアクセスします。

https://base.next-engine.org/users/sign_in/?client_id=<CLIENT_ID>&redirect_uri=<REDIRECT_URI>

ネクストエンジンのログイン後、<REDIRECT_URI>?uid=xxxx&state=xxxx にリダイレクトされます。uidstate を控えます。

詳細は /api/users/sign_in/ を参照。

ステップ 3: access_token を取得 (1 分)

Section titled “ステップ 3: access_token を取得 (1 分)”

curl で叩きます (<UID> <STATE> <CLIENT_ID> <CLIENT_SECRET> を実際の値に置換):

Terminal window
curl -X POST https://api.next-engine.org/api_neauth \
-d 'uid=<UID>' \
-d 'state=<STATE>' \
-d 'client_id=<CLIENT_ID>' \
-d 'client_secret=<CLIENT_SECRET>'

レスポンスの access_tokenrefresh_token を控えます (両方とも数十文字の英数字)。

{
"result": "success",
"access_token": "abcd1234...",
"access_token_end_date": "2026-05-02 14:00:00",
"refresh_token": "efgh5678...",
"refresh_token_end_date": "2026-05-04 14:00:00",
"company_account": "test-shop"
}

詳細は NEログインaccess_token取得

商品マスタ検索を例に。<ACCESS_TOKEN> <REFRESH_TOKEN> は前ステップの値。

Terminal window
curl -X POST https://api.next-engine.org/api_v1_master_goods/search \
-d 'access_token=<ACCESS_TOKEN>' \
-d 'refresh_token=<REFRESH_TOKEN>' \
-d 'wait_flag=1' \
-d 'fields=goods_id,goods_name,stock_quantity' \
-d 'limit=5'
const params = new URLSearchParams({
access_token: '<ACCESS_TOKEN>',
refresh_token: '<REFRESH_TOKEN>',
wait_flag: '1',
fields: 'goods_id,goods_name,stock_quantity',
limit: '5',
})
const res = await fetch('https://api.next-engine.org/api_v1_master_goods/search', {
method: 'POST',
headers: { 'content-type': 'application/x-www-form-urlencoded' },
body: params,
})
const json = await res.json()
if (json.result !== 'success') throw new Error(json.message ?? json.code)
console.log(json.data)
import requests
params = {
'access_token': '<ACCESS_TOKEN>',
'refresh_token': '<REFRESH_TOKEN>',
'wait_flag': '1',
'fields': 'goods_id,goods_name,stock_quantity',
'limit': '5',
}
res = requests.post('https://api.next-engine.org/api_v1_master_goods/search', data=params)
json = res.json()
if json['result'] != 'success':
raise RuntimeError(json.get('message') or json.get('code'))
print(json.get('data'))

成功すれば data 配列に商品が最大 5 件返ります。

ステップ 5: トークン期限切れの扱い

Section titled “ステップ 5: トークン期限切れの扱い”

access_token は 1 日、refresh_token は 3 日で期限切れます。アプリ側ではリクエスト毎に 両方を毎回送信 すれば、期限切れ時に自動で新しいトークンを発行してくれます (レスポンスの access_token / refresh_token を保存して次回以降に使う)。

// レスポンスから受け取ったトークンを永続化
if (json.access_token) saveTokens(json.access_token, json.refresh_token)

詳細は パラメータ共通事項

症状確認
401 / 403 で全リクエストが弾かれるclient_id / client_secret がテスト環境のものか確認
result: "redirect" が返るrefresh_token の期限切れ。ステップ 2-3 を再実行して uid/state/access_token を再取得
code: "001001" (POST パラメータに client_id が…)client_id を送り忘れ。ステップ 3 のリクエストを確認
code: "003002" (メイン機能過負荷)wait_flag=1 を付けて再送 (詳細)
文字化けリクエスト/レスポンスとも UTF-8。Content-Type: application/x-www-form-urlencoded; charset=utf-8 を明示