Camel Public API

Download OpenAPI specification:

Introduction

Camel Public APIはCamelで統合されたデリバリーサービスの注文や店舗、メニューなどの情報を連携出来るようにするためのAPIです。

Getting Started

Process Overview

Camelから情報を取得するパターンとCamelへ情報を登録するパターンの2つがあり、連携開始までのフロー概要は下記のようになります。

<Camelから情報を取得するパターン>

  1. NDA締結後、招待用のメールアドレスを確認させていただき弊社側で以下3つの対応をさせていただきます。
  • Slackチャンネルへのご招待
  • API質問ページへのご招待
  • 検証環境用「client_id」と「client_secret」のご共有
    • 2つの情報を使用するとAPIアクセスに必要なトークンを発行できます。詳しくはAuthorizationのセクションをご確認ください。
  1. 弊社側でテスト店舗を作成いたします。(webhook用URLをご提供ください)
  2. パートナー企業様で開発
  • こちらを確認しテストを進めてください。
  1. 開発完了後、本番開始のタイミングで本番環境用の「client_id」と「client_secret」をご共有いたします。
  2. 本番環境用のwebhook用URLをご共有ください。
  3. 店舗連携の作業を行っていただき本番店舗で運用開始。

<Camelへ情報を登録するパターン>

  1. NDA締結後、招待用のメールアドレスを確認させていただき弊社側で以下3つの対応をさせていただきます。
  • Slackチャンネルへのご招待
  • API質問ページへのご招待
  • 検証環境用「client_id」と「client_secret」のご共有
    • 2つの情報を使用するとAPIアクセスに必要なトークンを発行できます。詳しくはAuthorizationのセクションをご確認ください。
  1. Camelに表示するための情報として以下の情報をご提供ください。(ロゴ以外はオプションです)
  • テスト環境における店舗ID
  • サービスロゴ画像
  • サービスヘルプへのリンク
  • サービスのコールセンター電話番号
  1. 弊社側でテスト店舗を作成いたします。(webhookをご利用予定の場合は、webhook用URLをご提供ください)
  2. パートナー企業様で開発
  3. 開発完了後、本番開始のタイミングで本番環境用の「client_id」と「client_secret」をご共有いたします。
  4. 本番環境用のwebhook用URLをご共有ください。
  5. 店舗連携の作業を行っていただき本番店舗で運用開始

webhookURLについてはPRD環境と同一でも異なるものでも構いません。

How to Test and Development

  1. 弊社からテストアカウントを発行いたします。テストアカウントにおけるメニューコードの設定が必要な場合は別途お申し付けください
  2. 弊社のテスト注文機能等を使用しながらWebhookやその他APIのテストを行ってください

テスト注文機能利用方法

  1. 注文一覧画面、左のスライドバーからテスト注文機能を選択します
  2. テスト注文画面にてデリバリーサービスを選択してください
  3. 商品を選択したい場合、右のチェックボックスを選択してください
  4. メニューが登録されている場合メニューが一覧表示されます
  5. 商品右のチェックボックスを入れて画面上部の注文ボタンを押してください
  6. トップページに戻り注文を確認してください

尚、上記のテスト注文機能は注文形式や商品パターン等、全てを網羅的にテストすることは出来ません。テスト注文機能で実施できないテストは弊社がサポートいたしますのでご連絡ください。

全ての処理において、文字コードはUTF-8を使用してください。

Integration Flow

Integration Store Flow

<Camelから情報を取得するパターン>

  1. 弊社が用意するフォームにて連携店舗の申請をしていただきます。*この時CAMELログインアカウントの入力をお願いしております。連携事業者様ではなくサービス利用企業様がご入力いただくことが望ましいです。
  2. 連携が完了した場合、事前にお渡しするAPI連携企業様向けの連携店舗一覧シートに店舗情報が追記されています。連携する店舗のIDや店舗名を確認してください。
  3. API連携企業様システムのWebhook受信準備が整ったタイミングでUpdate Webhook StatusAPIを使用しステータスを「ENABLED」に更新してください。該当店舗のWebhook連携が開始されます。

<Camelへ情報を登録するパターン>

  1. 弊社が用意するフォームにて連携店舗の申請をしていただきます。*この時CAMELログインアカウントの入力をお願いしております。連携事業者様ではなくサービス利用企業様がご入力いただくことが望ましいです。
  2. 連携が完了した場合、事前にお渡しするAPI連携企業様向けの連携店舗一覧シートに店舗情報が追記されています。連携する店舗のIDや店舗名を確認してください。
  3. (仮)サービス利用企業様が保有するパートナー企業様における店舗IDを確認し、弊社内部で紐付け作業を行います。
  4. API連携企業様システムのWebhook受信準備が整ったタイミングでUpdate Webhook StatusAPIを使用しステータスを「ENABLED」に更新してください。該当店舗のWebhook連携が開始されます。

Integration Item Mapping Flow

<商品コード連携の流れ>

連携事業者様の商品コードとCAMELで保持する商品IDを統合するためのフローになります。
2022年3月現在、メニューAPIが準備出来ていないためCAMELの管理画面にて連携事業者様の商品コードを入力することで紐付けしていただくフローとなっております。

  1. CAMELに店舗を連携させ、各デリバリーサービスのメニューがCAMELに取り込まれていることを確認してください。*店舗への連携が完了されたタイミングでメニューは取り込まれます
  2. 連携開始時に「商品コード設定のパターン」をご教示ください。システム側で設定いたします。(詳しくは後述の商品コード設定時の仕様をご確認ください)
  3. CAMELの管理画面、もしくはCSVにて商品一覧を確認しながら「連携事業者様の商品コード」を入力してください
    ex)業態 × デリバリーサービスごとパターンをUIで登録する時のイメージ画面 IntegrationItemMappingFlowDashboardImage
  4. 1が完了していれば、連携する注文データの中に統合された商品コードが含まれております。詳しくはGetOrderDetailsAPIのセクションをご確認ください。

※1 CSV一括登録とUI経由の2つの手段がございます。
※2 こちらの作業を担当いただくのはクライアント企業のご担当者様を想定しておりますが、代行いただいても問題ございません。
※3 商品コード設定のパターンは運用途中で変更できません。どうしても変更が必要な場合は弊社担当者へご連絡ください。
※4 商品IDの統合をしなくても注文連携は可能です。


<商品コード設定時のパターン>

連携事業者様のシステムの仕様や、クライアント企業様の方針等により「商品コードがどの単位で設定されているか」のパターンがいくつかあると認識しております。
CAMELでは標準で下記の4パターンに対応しております。これらのパターンに沿って商品コードをご設定いただけます。

① 業態ごと

  • 業態ごとに商品コードが振られている。

  • ex) テストブランド1とテストブランド2で販売している緑茶という商品のコードは異なる。ただデリバリーサービスごとには分かれていない。

    商品名 業態名 デリバリーサービス名 商品コード
    緑茶 テストブランド1 UberEats, Wolt 100
    緑茶 テストブランド2 UberEats, Wolt 200

② 業態 × デリバリーサービスごと

  • 業態ごと及びデリバリーサービスごとに商品コードが振られている。

  • ex) テストブランド1とテストブランド2で販売している緑茶という商品のコードは業態及びデリバリーサービスごとに異なる。

    商品名 業態名 デリバリーサービス名 商品コード
    緑茶 テストブランド1 UberEats 100
    緑茶 テストブランド2 Wolt 300
    緑茶 テストブランド1 UberEats 200
    緑茶 テストブランド2 Wolt 400

③ デリバリーサービスごと

  • デリバリーサービスごとに商品コードが振られている。

  • ex) UberEatsとWoltで販売している緑茶という商品のコードは異なる。ただ業態ごとには分かれていない。

    商品名 業態名 デリバリーサービス名 商品コード
    緑茶 テストブランド1,テストブランド2 UberEats 100
    緑茶 テストブランド1,テストブランド2 Wolt 200

④ 拠点(店舗)ごと

  • 拠点(店舗)ごとに商品コードが振られている。

  • ex) 緑茶という商品のコードは拠点ごとに異なる。テストストア渋谷店とテストストア新宿店ではブランド単位で同じ商品でもコードが異なる

    商品名 拠点(店舗)名 デリバリーサービス名 業態名 商品コード
    緑茶 テストストア新宿店 UberEats, Wolt テストブランド1 100
    緑茶 テストストア渋谷店 UberEats, Wolt テストブランド1 300

Rate Limit

  • リクエスト制限表

    エンドポイント 時間あたりリクエスト制限
    /oauth/token 10/10s
    /orders/:order_id 150/10s
    /orders/:order_id/state 150/10s
    /stores 10/10s
    /stores/:store_id 50/10s
    /stores/:store_id/state 50/10s
    /stores/:store_id/webhook-status 50/10s

Authorization

Camel Public APIではOAuth2.0に対応しています。2022年3月現在、AuthorizationAPIのグラントタイプは「Client Credentials」のみに対応しております。
APIの詳細仕様はAuthorizationAPIのセクションをご確認ください。

*OAuth2.0 仕様概要
RFC6749 The OAuth 2.0 Authorization Framework(他にもRFCが存在しますがここでは割愛します)

OAuth

Security Scheme Type: OAuth2
Flow type: clientCredentials
Token URL: /oauth/token
Scopes:
  • orders.read -

    注文の取得

  • orders.delivery.read -

    注文の配達情報の取得

  • orders.state.write -

    注文ステートの更新

  • orders.webhook -

    注文の作成・更新(Webhook)

  • stores.read -

    店舗の取得

  • stores.webhook_status.write -

    店舗のWebhookステータスの更新

  • stores.state.write -

    店舗ステートの更新

AccessToken

Security Scheme Type: HTTP
HTTP Authorization Scheme: bearer
Bearer format: JWT

Webhook

注文のステータスイベントなどを通知するためWebhookとして送信します。
正常にWebhookイベントの受信が完了した場合HTTP 200のステータスコードを返してください。
HTTP 200の応答が確認できない場合、最大6回再送信を試みます。

Webhook Security

Webhookの送信元がtacomsであることを受信元で確認するため、全てのWebhookにはX-Camel-Signatureヘッダーが含まれています。
tacomsではセキュリティの観点からこの署名を検証することを推奨しています。

署名を検証する

  1. クライアントシークレットを鍵とし、HMAC-SHA256アルゴリズムでリクエストボディの署名を取得します。
  2. 取得した署名とX-Camel-Signatureヘッダーに含まれる値が一致することを確認します。

*Goでの実装例

    // X-Camel-Signature: 76b95b9a9d50b72c4347784708b4121cdd778d5278f89437b8fb506a386877e4

    clientSecretSample := "y_6e01JuPLO2tu0IavWoNJuOPN-2Nm6FpZsQe21-"
    requestBodySample := `{"event_type": "OrderCreated", "event_id": "a7a26ff2-e851-45b6-9634-d595f45458b7", "event_time": 1640962800, "event_data": {"order_id": "f3d34064-k93c-4f33-12f4-0570d7e3e123", "store_id": 100}}`
    
    h := hmac.New(sha256.New, []byte(clientSecretSample))
    io.WriteString(h, requestBodySample)
    fmt.Println(hex.EncodeToString(h.Sum(nil)))
    // 76b95b9a9d50b72c4347784708b4121cdd778d5278f89437b8fb506a386877e4

Publish Event v1 Webhook

header Parameters
X-Camel-Signature
required
string
Content-Type
required
string
Default: application/json
Request Body schema: application/json
event_type
required
string (EventType)
イベントタイプ タイミング
OrderCreated 新規注文時
OrderAccepted 注文確定時
OrderPrepared 注文準備完了時
OrderCancelled 注文キャンセル時。自動キャンセル含む
OrderFinished 注文受け渡し完了時
event_id
required
string <uuid>
event_time
required
integer

unix time

required
object

Responses

Request samples

Content type
application/json
Example
{
  • "event_type": "OrderCreated",
  • "event_id": "a7a26ff2-e851-45b6-9634-d595f45458b7",
  • "event_time": 1643641200,
  • "event_data": {
    }
}

AuthorizationAPI

Generate Access Token v1

Request Body schema: application/x-www-form-urlencoded
grant_type
required
string
Default: "client_credentials"
client_id
required
string
client_secret
required
string
scope
required
string (Scope)
Enum: "orders.read" "orders.state.write" "orders.delivery.read" "orders.webhook" "stores.read" "stores.webhook_status.write" "stores.state.write"

Responses

Request samples

Content type
application/x-www-form-urlencoded
grant_type=client_credentials&client_id=0345d26b-3687-4a9e-946c-6bad13f8b36b&client_secret=example_secret&scope=orders.read%2Cstores.read%2Cstores.webhook_status.write

Response samples

Content type
application/json
{
  • "access_token": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.tyh-VfuzIxCyGYDlkBA7DfyjrqmSHu6pQ2hoZuFqUSLPNY2N0mpHb3nk5K17HWP_3cYHBw7AhHale5wky6-sVA",
  • "token_type": "Bearer",
  • "expires_in": 2592000,
  • "scope": "orders.read"
}

IntegrationAPI

Update Webhook Status v1

Authorizations:
AccessToken
path Parameters
store_id
required
string
Example: 100
header Parameters
Content-Type
required
string
Default: application/json
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"
Request Body schema: application/json
webhook_status
required
string (WebhookStatus)
Enum: "ENABLED" "DISABLED"

Webhookの送信がされるか否かを表すステータスです。

説明
ENABLED Webhookが送信される状態
DISABLED Webhookが送信されない状態

Responses

Request samples

Content type
application/json
{
  • "webhook_status": "ENABLED"
}

Response samples

Content type
application/json
"400 Bad Request"

OrderAPI

注文情報に関するAPIです。

Camelから情報を取得するパターンとCamelへ情報を登録するパターンの2つがあり、それぞれ下記のようなフローになります。

<Camelから情報を取得するパターン>

IntegrationOrderFlow


<Camelへ情報を登録するパターン>

Create OrderAPICancel OrderAPIで注文情報及びキャンセル情報を連携してください。
Camelでステータス変更がされた時、webhookを発行いたしますのでそちらを受け取ることで連携事業者様側で注文確定処理をすることも可能になります。

TakeoutDeliveryOrderFlowImage

店舗連携・webhook受信設定のフローに関しましては、Integration Flowを別途参照してください。

Get Order Details v1

注文の詳細を取得するAPIです。

Authorizations:
AccessToken
path Parameters
order_id
required
string <uuid>
header Parameters
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"

Responses

Response samples

Content type
application/json
Example
{
  • "order_id": "93101167-9065-4b9c-b98b-5d789a3ed9fe",
  • "type": "PICK_UP",
  • "display_id": "04F32",
  • "external_order_id": "1828ac55-1c28-4a35-9b85-30d455e2d437",
  • "delivery_order_id": "DAubB",
  • "state": "CREATED",
  • "pay_type": "CREDIT_CARD",
  • "delivery_service": "UBER_EATS",
  • "order_date_and_time": "2021-12-01T12:00:00+09:00",
  • "estimated_pickup_time": "2021-12-01T12:00:30+09:00",
  • "note": "おしぼりお願いします!",
  • "items": [
    ],
  • "items_total_price": 2100,
  • "delivery_fee": 100,
  • "store_promo_discount": 0,
  • "delivery_service_promo_discount": 0,
  • "total_price": 2100,
  • "price_per_taxes": [
    ],
  • "store": {
    },
  • "is_test": true,
  • "is_preorder": true,
  • "promotions": [
    ],
  • "metadatas": [
    ]
}

Update Order State v1

注文のステータスを変更できるAPIです。こちらのAPIを利用するとCAMELを経由して各デリバリーサービスのAPIへリクエストします。

Authorizations:
AccessToken
path Parameters
order_id
required
string <uuid>
header Parameters
Content-Type
required
string
Default: application/json
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"
Request Body schema: application/json
state
required
string
adjust_min
integer
Enum: 10 20 30 40

調理時間の調整。指定の分数が現在時刻に加算される
Woltの通常注文時のみ有効です。Wolt通常注文以外の時は時間を指定しても反映されません。
※もしWoltの通常注文で指定が無い場合、調理時間のデフォルトは20分となっております
※Woltの予約注文では時間を指定することができません

Responses

Request samples

Content type
application/json
Example
{
  • "state": "accepted",
  • "adjust_min": 10
}

Response samples

Content type
application/json
"400 Bad Request"

Create Order v1

新規注文を登録するAPIです。

注文形式について

パラメーターはorder_type(注文形式)によって変化します。
デリバリー形式(自社・代行)の場合は配達に関するパラメーターの入力が必須になります。

POSコードについて

店舗で連携しているPOS事業者がCamelと連携している場合、注文データをCamel経由でPOSに送信することが可能です。
条件として、事業者様側で事前にPOS連携を完了している必要があります。 POSへの注文送信には、POS事業者にて管理しているPOSコードをサービス事業者がCamelに送信し、Camelが送られてきたPOSコードをPOS事業者に送信するという手続きを踏みます。

・POSコードをCamelに送信する方法 (事業者様側で既にPOS連携が完了している場合) Create OrderAPIのリクエストボディにitemsオブジェクトが存在します。そのうちのpos_codeというパラメータに商品のPOSコードを入力してください。
また、商品のトッピングや数量などの情報が格納されているselected_modifier_groupsの中にもトッピンググループのPOSコードを記入する欄がございます。
selected_itemsオブジェクトにもitemsオブジェクト同様pos_codeパラメータがございますので、トッピング商品のPOSコードを入力してください。

Authorizations:
AccessToken
header Parameters
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"
Request Body schema: application/json
order_type
required
string (OrderType)
Enum: "DINE_IN" "PICK_UP" "DELIVERY_BY_SERVICE" "DELIVERY_BY_STORE"

注文の形式を示す項目です。
*order_typeに応じて必須項目が変わります。
詳細は各項目の説明欄をご確認ください

説明
DINE_IN 店内飲食
PICK_UP テイクアウト
DELIVERY_BY_SERVICE デリバリーサービス
による配達
DELIVERY_BY_STORE 店舗による配達
external_store_id
required
string

注文を登録する店舗の事業者側で保持している識別IDです。

external_order_id
required
string

注文を登録する店舗の当該注文の事業者側で保持している識別IDです。

display_id
required
string <= 255

注文を登録する店舗の当該注文のエンドユーザー向けに表示するIDです。

required
Array of objects (ItemParams)

注文された商品に関する項目です。

total_price
required
integer

注文全体の料金です。

item_total_price
required
integer

注文全体の小計金額です。

order_date_and_time
required
string <date-time>

タイムゾーン込みで入力してください。eg."2021-12-01T12:00:30+09:00"
注文された日時です。

point_discount
integer

ポイントによる割引金額です。

store_promo_discount
integer

店舗側で実施された
店舗の売上に関わる割引額が入ります。

service_promo_discount
integer

サービス側で実施された
店舗の売上には関わらない割引額が入ります。

Array of objects (PromotionParams)

デリバリーサービス経由の割引に関する項目です。

note
string <= 600

商品に関するお客様からの追記事項です

object (Customer)

注文した顧客の情報に関する項目です。

pay_type
string (PayType)
Enum: "CREDIT_CARD" "CASH" "PAYPAY" "IN_STORE_PAYMENT" "ON_DELIVERY" "FULL_POINT_PAYMENT" "E_MONEY" "INVOICE" "AMAZON_PAY" "LINE_PAY" "D_POINT" "D_PAY" "D_PAY_MINI" "AU_PAY" "SOFTBANK_PAY"

支払いの方法を示す項目です。

支払い方法が提供されないデリバリーサービスもあるため
必須フィールドではありません。

説明
CREDIT_CARD クレジットカード
CASH 代金引換
PAYPAY Pay Pay
IN_STORE_PAYMENT 店舗での直接支払い
ON_DELIVERY お受け取り時決済
FULL_POINT_PAYMENT デリバリーサービスの
ポイントで全額支払い
E_MONEY Suicaなど電子マネー
INVOICE 請求書支払い
AMAZON_PAY Amazon Pay
LINE_PAY LINE Pay
D_POINT dポイント
D_PAY d払い(ネット)決済
D_PAY_MINI d払い(ミニアプリ)決済
AU_PAY au PAY
SOFTBANK_PAY ソフトバンクまとめて支払い
pay_place
string
Enum: "ONLINE" "STORE"

支払い場所を示す項目です。オンライン支払い(ONLINE)と店頭支払い(STORE)の2項目を想定しております。

estimated_pickup_time
string <date-time>

order_typeが「PICK_UP」、「DELIVERY_BY_STORE」、「DELIVERY_BY_SERVICE」の際、必須項目となります。
タイムゾーン込みで入力してください。eg."2021-12-01T12:00:30+09:00"
予想される受け渡し時間です。
typeごとに値の文脈が異なります

type 受け渡し時間の説明
DELIVERY_BY_SERVICE 各サービスの配達員が
店舗にくる目安時間となります
DELIVERY_BY_STORE お客様の元へ届けられる
目安時間となります
PICK_UP お客様が店舗にくる
目安時間となります
is_preorder
boolean

order_typeが「PICK_UP」、「DELIVERY_BY_STORE」、「DELIVERY_BY_SERVICE」の際、必須項目となります。
予約注文かどうかを判別するフラグです。

disposable_items
string
Enum: "required" "not_required"

<font color="red"d>order_typeが「PICK_UP」、「DELIVERY_BY_STORE」、「DELIVERY_BY_SERVICE」の際、必須項目となります。
使い捨て食器を希望するかどうかを判別するフラグです。

delivery_fee
integer

order_typeが「DELIVERY_BY_STORE」の際、必須項目となります。
自社配達の場合の配送料金です。
配達代行の場合の配送料金はこちらの値には含まれません。

delivery_phone_number
string

order_typeが「DELIVERY_BY_SERVICE」、「DELIVERY_BY_STORE」の際、必須項目となります。
日本の電話番号の方式での記入をお願いします。eg.080-1111-2222, 03-1111-2222
配達先のお客様やお客様につながるリダイレクト元の電話番号です。

delivery_address
string

order_typeが「DELIVERY_BY_SERVICE」、「DELIVERY_BY_STORE」の際、必須項目となります。
配達先の住所です。

delivery_instructions
string

配達に関するメモです。

receive_type
string (ReceiveType)
Enum: "DELIVER_TO_DOOR" "LEAVE_AT_DOOR" "CURBSIDE" "RECEIVE_IN_STORE" "DRIVE_IN_THROUGH" "RECEIVE_IN_PARKING" "LEAVE_IN_LOBBY" "MEET_IN_LOBBY" "LEAVE_INSIDE_BUILDING_DOOR"

order_typeが「DELIVERY_BY_SERVICE」、「DELIVERY_BY_STORE」の際、必須項目となります。

説明
DELIVER_TO_DOOR 玄関先で受け取る
LEAVE_AT_DOOR 玄関先に置く
CURBSIDE 外で受け取る
RECEIVE_IN_STORE 店内受取
DRIVE_IN_THROUGH ドライブスルー
RECEIVE_IN_PARKING 駐車場受取
LEAVE_IN_LOBBY ロビーに置く
MEET_IN_LOBBY ロビーで受け取り
LEAVE_INSIDE_BUILDING_DOOR 建物内の部屋前に置く

Responses

Request samples

Content type
application/json
{
  • "order_type": "DELIVERY_BY_STORE",
  • "external_store_id": "ca2a6601-bba4-ca10-099e-1471ae0c5c19",
  • "external_order_id": "af76739b-9962-5cde-bd0b-1c3492a7d07f",
  • "display_id": "04F32",
  • "items": [
    ],
  • "total_price": 2100,
  • "item_total_price": 2200,
  • "order_date_and_time": "2021-12-01T12:00:00+09:00",
  • "point_discount": 0,
  • "store_promo_discount": 0,
  • "service_promo_discount": 300,
  • "promotions": [
    ],
  • "note": "ネギは抜いてください",
  • "customer": {
    },
  • "pay_type": "CREDIT_CARD",
  • "pay_place": "ONLINE",
  • "estimated_pickup_time": "2021-12-01T12:00:30+09:00",
  • "is_preorder": false,
  • "disposable_items": "not_required",
  • "delivery_fee": 100,
  • "delivery_phone_number": "080-1111-2222",
  • "delivery_address": "東京都港区芝公園1-1-1",
  • "delivery_instructions": "出来るだけ早く届けてください。",
  • "receive_type": "DELIVER_TO_DOOR"
}

Response samples

Content type
application/json
{
  • "order_id": "aaa7cfde-1e6a-f949-29e3-b7fc0dfce2aa"
}

Cancel Order v1

注文をキャンセルするAPIです。
注文登録時に返却される注文IDを送信し、該当の注文をキャンセルします。
その際、注文全体の小計(item_total_price)が0になり、売上に計上されないように処理が行われます。

Authorizations:
AccessToken
path Parameters
order_id
required
string <uuid>
Example: aaa7cfde-1e6a-f949-29e3-b7fc0dfce2aa

注文作成時に返却された注文IDです。

header Parameters
Content-Type
required
string
Default: application/json
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"

Responses

Response samples

Content type
application/json
"400 Bad Request"

StoreAPI

List Stores v1

Authorizations:
AccessToken
query Parameters
cursor
string <base64>
Example: cursor=NzBjOGZkNzUtYzlmYS00ZDA0LTgwNjItNDA0NzI2OGRlZmM4Cg==

レスポンスのnext_cursorを入れる

limit
integer [ 1 .. 50 ]
Default: 30

最大50件まで取得可能。指定しないと連携開始日の降順で30件取得される。

header Parameters
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"

Responses

Response samples

Content type
application/json
Example
{
  • "stores": [
    ],
  • "next_cursor": "ZXhhbXBsZV9pZAo="
}

Get Store Details v1

Authorizations:
AccessToken
path Parameters
store_id
required
string
Example: 100
header Parameters
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"

Responses

Response samples

Content type
application/json
Example
{
  • "id": "100",
  • "name": "たこ焼き たこむす 本郷店",
  • "webhook_status": "ENABLED",
  • "brands": [
    ]
}

Change Store State v1

拠点に紐づく指定した店舗のステータスを切り替えるAPIです。
※現在「出前館」と「EPARK Takeout」は本APIの対象外となっております

Authorizations:
AccessToken
path Parameters
store_id
required
string
Example: 100
header Parameters
Content-Type
required
string
Default: application/json
Authorization
required
string
Example: Bearer <token>

curlでのHeader指定例
-H "Authorization: Bearer JA.VUNmGAAAAAAAEgASAAAFAAAAAA......"
Request Body schema: application/json
store_state
required
string (StoreStateReq)
Enum: "ACCEPTING" "PENDING"

店舗が注文を受け付けているか否かを表すステータスです。

説明
ACCEPTING 注文受付中
PENDING 注文受付停止中
ids
required
Array of strings unique

Get Store DetailsAPIのDeliveryServiceStore配列に存在するIDを指定

Responses

Request samples

Content type
application/json
{
  • "store_state": "ACCEPTING",
  • "ids": [
    ]
}

Response samples

Content type
application/json
{
  • "error_stores": [
    ]
}