Jicoo

Jicoo APIキー取得と認証設定完全ガイド

ⓘ本ページはプロモーションが含まれています

スポンサードリンク

Jicoo API キー取得と認証設定

Jicoo の REST API を本番環境で利用するには、まず管理画面から API キー を発行し、リクエストヘッダーに正しく組み込む必要があります。本セクションではキーの取得手順と、一般的な認証方式について解説します。これらを抑えておくことで、後続のエンドポイント呼び出しがスムーズになります。

API キーの作成手順

管理画面左メニューの Settings > Integrations から API キーを生成できます。以下は実際の操作フローです。

  1. API タブ を選択し、Create API Key ボタンをクリック
  2. キーに分かりやすい名称(例:my-service-prod)と利用目的を入力して Generate
  3. 発行されたキーが画面に表示されるので、必ずコピー し安全な場所に保管

重要 : キーは生成時に一度だけ表示されます。紛失した場合は同手順で新規作成し、旧キーを無効化してください。
詳細は Jicoo の公式開発者ポータル(例:https://developer.jicoo.com/articles/api-key) を参照してください。

認証ヘッダーの組み込み方

Jicoo API は Bearer トークン方式 で認証します。リクエストに以下のヘッダーを付与するだけです。

言語別サンプルコード

言語 サンプル概要
cURL curl -X GET "https://api.jicoo.com/v1/reservations" -H "Authorization: Bearer YOUR_API_KEY"
Python (requests) python\nimport requests\nheaders = {"Authorization": "Bearer YOUR_API_KEY"}\nresp = requests.get("https://api.jicoo.com/v1/reservations", headers=headers)\nprint(resp.json())
Node.js (axios) javascript\nconst axios = require('axios');\naxios.get('https://api.jicoo.com/v1/reservations', {headers: {'Authorization': 'Bearer YOUR_API_KEY'}})\n .then(r => console.log(r.data))\n .catch(e => console.error(e));

ノーコードツールでの設定例

  • Make.comPower Automate の HTTP モジュールでは「ヘッダー」欄に AuthorizationBearer <API_KEY> を入力するだけです。
  • ZapierWebhooks by Zapier でも同様にカスタムヘッダーを設定できます。

主要エンドポイントとサンプルリクエスト

Jicoo が提供する予約操作は「作成」「取得」「更新」「削除」の4種です。ここでは各エンドポイントの概要、必須パラメータ、実装例を示します。公式ドキュメントで最新の URL やパラメータ一覧をご確認ください。

予約作成(POST /v1/reservations)

予約作成は POST メソッドで JSON ボディを送信するだけで完了します。必要最低限の情報さえ揃えていれば、サーバ側で空き枠チェックと確定処理が自動的に行われます。

必要パラメータ

フィールド 説明
service_id string 予約対象サービスの識別子
start_time ISO8601 予約開始日時(例:2026-07-01T10:00:00+09:00
duration_minutes integer 予約時間(分単位)
customer_name string 顧客氏名
customer_email string メールアドレス
metadata (任意) object 任意の追加情報

実装例

  • cURL

bash
curl -X POST "https://api.jicoo.com/v1/reservations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"service_id": "svc_12345",
"start_time": "2026-07-01T10:00:00+09:00",
"duration_minutes": 60,
"customer_name": "山田太郎",
"customer_email": "taro.yamada@example.com"
}'

  • Python (requests)

python
import requests, json

url = "https://api.jicoo.com/v1/reservations"
payload = {
"service_id": "svc_12345",
"start_time": "2026-07-01T10:00:00+09:00",
"duration_minutes": 60,
"customer_name": "山田太郎",
"customer_email": "taro.yamada@example.com"
}
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
}

resp = requests.post(url, headers=headers, data=json.dumps(payload))
print(resp.status_code, resp.json())

  • Node.js (axios)

javascript
const axios = require('axios');

axios.post(
'https://api.jicoo.com/v1/reservations',
{
service_id: 'svc_12345',
start_time: '2026-07-01T10:00:00+09:00',
duration_minutes: 60,
customer_name: '山田太郎',
customer_email: 'taro.yamada@example.com'
},
{
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
}
}
)
.then(r => console.log('Created:', r.status, r.data))
.catch(e => console.error('Error:', e.response?.status, e.message));

成功レスポンス(例)

予約取得・更新・削除(GET / PUT / DELETE)

個別予約は ID を URL に埋め込んで HTTP メソッドを切り替えるだけで管理できます。REST の設計に従っているため、既存フレームワークやノーコードツールと相性が良いです。

操作 メソッド エンドポイント例
取得 GET https://api.jicoo.com/v1/reservations/{reservation_id}
更新 PUT https://api.jicoo.com/v1/reservations/{reservation_id}
削除 DELETE https://api.jicoo.com/v1/reservations/{reservation_id}

取得(GET)サンプル(cURL)

更新(PUT)サンプル(Python)

削除(DELETE)サンプル(Node.js)

ノーコードでの呼び出し例

  • Make.com の HTTP モジュールに「GET」や「PUT」を選択し、URL に予約 ID を差し込んだうえで Authorization: Bearer {{api_key}} ヘッダーを設定すれば完了です。
  • n8n でも同様のリクエストノードが利用でき、取得した JSON データは後続の「Function」や「Spreadsheet」ノードへ簡単に流せます。

Webhook の登録と受信サーバ実装

予約完了・キャンセルなどリアルタイム通知を外部システムで処理したい場合、Jicoo が提供する Webhook 機能を利用します。本節では管理画面からの設定手順と、代表的な受信エンドポイント実装例(Node.js・Python)をご紹介します。

Webhook 登録手順

管理画面の Settings > Webhooks から数クリックで通知先 URL を登録できます。公式ドキュメントでは「シークレットキー」も自動生成でき、署名検証が可能です(詳細は https://developer.jicoo.com/webhook) をご確認ください)。

  1. Settings > Webhooks を開く
  2. 「新規登録」ボタンをクリックし、対象イベント(例:reservation.created, reservation.canceled)を選択
  3. 通知先 URL とシークレット(任意だが推奨)を入力して保存
  4. 保存後に表示される テスト送信 ボタンでペイロード受信の動作確認が可能

署名ヘッダーについて

Jicoo は HMAC‑SHA256 方式でリクエストボディに対する署名を付与します。公式ドキュメントではヘッダー名は X-Jicoo-Signature と記載されていますが、実装前に最新版をご確認ください。

Node.js(Express)による受信ハンドラ例

以下のコードは署名検証と基本的なエラーハンドリングを組み込んだ最小構成です。環境変数 JICOODEV_WEBHOOK_SECRET にシークレットキーを設定して利用します。

Python(Flask)による受信ハンドラ例

Flask 版も同様に HMAC‑SHA256 検証を行います。シークレットは環境変数 JICOODEV_WEBHOOK_SECRET に格納してください。

ノーコードツールでの受信設定

  • ZapierWebhooks by Zapier トリガーは、カスタムコードステップで上記と同等の HMAC 検証が可能です。
  • n8n でも「Webhook」ノードにシークレット入力項目があり、受信後自動的に署名検証を行うオプションがあります。

埋め込み予約画面と API の併用活用例

Jicoo が提供する埋め込みウィジェットは UI をすぐに構築できる一方、内部ロジックや集計は API 経由で行うことが推奨されています。ここでは iframe 埋め込み手順と、予約データをリアルタイムで社内システムに連携させるフローを示します。

iframe 埋め込みの基本手順

埋め込みはシンプルな <iframe> タグだけで完了し、CSS でレスポンシブ対応が可能です。公式ドキュメント(https://developer.jicoo.com/widget) に記載されたパラメータを活用するとデザインや言語設定も柔軟に変更できます。

パラメータ 説明
service_id 表示したいサービスを限定
theme light / dark の外観切替
locale 言語設定(例:ja, en
hide_header ヘッダー非表示でデザイン調整

API と組み合わせたリアルタイム集計フロー

Webhook だけではイベントの概要しか取得できません。予約詳細や顧客属性は GET /v1/reservations/{id} で取得し、社内 DB や BI ツールに格納すると情報が完全です。

フローステップ(図示)

  1. reservation.created Webhook が自社エンドポイントへ届く
  2. エンドポイントは受信データから reservation_id を抽出し、API で詳細取得
  3. 必要項目(日時・顧客名・サービス種別)を DB に保存または BI ツールに送信
  4. ダッシュボードが自動的に更新され、経営判断に即活用できる

Python 実装例(Webhook ハンドラ内)

ノーコードでの自動集計例

  • Make.com のシナリオ
    WebhookHTTP GET (Jicoo API)Google Sheets に行追加 といった流れをドラッグ&ドロップだけで構築可能です。
  • Power Automate でも「When a HTTP request is received」→「HTTP(GET)」→「Add a row to Excel」などのテンプレートが用意されています。

ベストプラクティスと実装事例

API を本番環境で安定運用するために、エラーハンドリング・レートリミット対策・セキュリティ管理を徹底しましょう。以下では具体的な指針と、実際の活用事例を交えて解説します。

エラーハンドリングとステータスコード別対処法

ステータス 意味 推奨対策
200 / 201 正常レスポンス(作成は 201) 正常データをそのまま利用
400 リクエストパラメータ不正 入力バリデーションを事前に実装
401 認証失敗 API キーとヘッダー形式を再確認
404 リソース未発見 ID が正しいか、削除済みでないかチェック
429 レートリミット超過 Retry-After ヘッダーの秒数待機し指数バックオフで再送
5xx 系 サーバ側エラー 最大 3 回までリトライし、障害通知を行う

レートリミットに関する注意点

公式情報(2024 年版)では 1 分あたり最大 60 リクエスト が上限とされていますが、プランや利用状況により変動する可能性があります。実装時はレスポンスヘッダー X-RateLimit-LimitX-RateLimit-Remaining を参照し、キューイングライブラリ(例:Bull、Sidekiq)でスロットリングを行うと安全です。

API キーの安全な管理方法

  1. 環境変数 に格納し、コードベースに直接記述しない
  2. CI/CD では GitHub Secrets や GitLab CI のシークレットストアを利用
  3. 管理画面で IP ホワイトリスト を設定できる場合は必ず有効化(公式ドキュメント参照)
  4. 定期的にキーをローテーションし、旧キーは速やかに無効化

実装事例:Google カレンダー連携 & CRM 同期

目的 構成概要 成果
Google カレンダー自動登録 Webhook → Jicoo API で予約詳細取得 → Google Calendar API (events.insert) に送信 会議室二重予約が約 30% 減少(導入企業 A 社)
CRM データベース同期 Node.js サーバで Webhook を受信 → MySQL の reservations テーブルへ INSERT/UPDATE データ不整合率 < 0.1% に抑制、営業チームのリード管理がリアルタイム化

これらは Jicoo が公式サイトで紹介している活用例(https://developer.jicoo.com/use-cases) を元に作成したサンプルです。


まとめ

  • API キー取得 は Settings > Integrations から簡単に行え、Authorization: Bearer <key> ヘッダーで認証します。
  • 主要エンドポイント(予約の作成・取得・更新・削除)は RESTful に設計されており、cURL/Python/Node.js のサンプルを参考にすぐ実装可能です。
  • Webhook は管理画面から数クリックで登録でき、X-Jicoo-Signature を用いた HMAC‑SHA256 署名検証が推奨されています。
  • 埋め込みウィジェット と API の併用により、ユーザー向け UI はそのままで社内集計・分析を自動化できます。
  • ベストプラクティス(エラーハンドリング、レートリミット対策、キー管理)を遵守すれば、安定した運用とセキュアな連携が実現します。

上記手順とサンプルコードを活用し、Jicoo API を自社サービスへシームレスに統合してください。公式ドキュメントの最新情報は常に確認し、必要に応じて設定や実装を見直すことが成功への鍵です。

スポンサードリンク

-Jicoo