コンテンツにスキップ

Campaign API リファレンス(概要)

Campaign APIを使ったシステム連携を検討する技術担当者向けの概要ガイドです。

API の基本情報

項目
ベースURL https://api.anycampaign.jp/v1
プロトコル HTTPS
データ形式 JSON

認証

すべてのAPIリクエスト(ヘルスチェックを除く)には、以下の2つのヘッダーが必要です。

x-anycampaign-key: {APIキー}
x-anycampaign-store-id: {ストアID}

認証情報はAnyReachとの契約後に発行されます。APIキーは秘密情報として、Webサーバーの環境変数やシークレット管理サービスを使って安全に保管してください。


エンドポイント一覧

メソッド パス 説明 認証
POST /v1/product_variants/search 商品バリアント検索 必要
POST /v1/orders キャンペーン注文作成 必要
GET /v1/health 稼働確認 不要

POST /v1/product_variants/search

利用可能な商品の情報を取得します。注文作成前に商品IDを確認するために使用します。

リクエスト:

{
  "productVariantIds": ["商品バリアントID(UUID形式)"]
}

レスポンス(成功時):

{
  "items": [
    {
      "id": "商品バリアントID",
      "displayName": "商品名 / バリアント名",
      "description": "商品の説明",
      "storeName": "ブランド名",
      "productCode": "PROD-001",
      "skuCode": "SKU-001",
      "imageUrls": ["https://example.com/image.jpg"]
    }
  ],
  "notFound": ["見つからなかった商品バリアントID"]
}

POST /v1/orders

キャンペーンギフトの注文を作成し、受取URLを発行します。

リクエスト:

{
  "productVariantIds": ["商品バリアントID"],
  "senderEmail": "campaign@yourcompany.com",
  "senderName": "株式会社サンプル",
  "message": "キャンペーンにご参加いただきありがとうございます。ギフトをお受け取りください。",
  "messageCardId": "メッセージカードID(任意)"
}

リクエストパラメータ:

パラメータ 必須 説明
productVariantIds 必須 ギフトとして提供する商品のID(1件)
senderEmail 必須 キャンペーン主催者のメールアドレス
senderName 必須 受取画面に表示する企業・担当者名
message 必須 受取者へのメッセージ(200文字以内)
messageCardId 任意 メッセージカードのID

レスポンス(成功時):

{
  "recipientUrl": "https://receive.anygift.jp/gift/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}

GET /v1/health

APIサーバーの稼働状況を確認します。認証不要でアクセスできます。

  • 成功時: HTTP 200(レスポンスボディなし)
  • 失敗時: HTTP 500

システム監視やデプロイ後の疎通確認に活用できます。


エラーレスポンス

エラーが発生した場合、以下の形式でレスポンスが返されます。

{
  "code": "エラーコード",
  "message": "エラーの説明(日本語)"
}

主なエラーコード

コード HTTPステータス 内容
MISSING_PARAMETER 400 必須パラメータが未指定
TOO_LONG_MESSAGE 400 メッセージが200文字を超えている
OUT_OF_STOCK_PRODUCT_VARIANT 400 商品の在庫がない
PRODUCT_VARIANT_NOT_FOUND 404 指定した商品が存在しない
MESSAGE_CARD_NOT_FOUND 404 指定したメッセージカードが存在しない
SYSTEM_ERROR 500 サーバー内部エラー

システム連携の考え方

Campaign APIはシンプルなREST APIなので、HTTPリクエストができる言語・フレームワークであればどこからでも呼び出せます。

連携方式の選択:

  • バッチ連携: 夜間バッチや定期処理でAPIを一括呼び出し
  • イベントドリブン: フォーム送信・購入完了などをトリガーにリアルタイムで呼び出し
  • 手動トリガー: 管理ツールから手動でAPIを呼び出して特定のユーザーにURLを発行

詳細なAPI仕様書はAnyReachの担当者よりご提供します。