Tender Scope REST APIの詳細な仕様書とリファレンス。エンドポイント、認証、レスポンス形式、エラーハンドリングなどの技術情報を提供します。
API仕様書 v1.0
プロダクション対応のRESTful API - 2025年7月最新版
ベースURL | https://tender-scope.com/api/v1 |
プロトコル | HTTPS(TLS 1.2以上) |
データ形式 | JSON |
文字エンコーディング | UTF-8 |
レート制限 | プランにより異なる(Free: 100/時間, Pro: 1,000/時間, Enterprise: 10,000/時間, Premium Enterprise: 50,000/時間) |
Tender Scope APIは2つの認証方式をサポートしています:
サーバー間通信やスクリプトでの使用に適した認証方式です。テナントIDは自動的に取得されるため、X-Tenant-IDヘッダーは不要です。
X-API-Key: ts_sk_your-api-key-here
Content-Type: application/json
APIキーには作成時にテナント情報が埋め込まれており、ユーザーがテナントIDを管理する必要がありません。
ユーザーセッションベースの認証に使用。JWTトークンと併せてX-Tenant-IDヘッダーが必要です。
Authorization: Bearer jwt-token
X-Tenant-ID: your-tenant-id
Content-Type: application/json
ダッシュボードの「設定」→「API設定」で現在のテナントIDを確認できます。
エンドポイント | メソッド | 説明 | 認証 |
---|---|---|---|
/tenders | GET | 案件一覧取得・検索 | API Key / JWT |
/tenders/{id} | GET | 案件詳細取得 | API Key / JWT |
/global-tenders/browse | GET | グローバル案件プール検索 | API Key / JWT |
/global-tenders/select | POST | 案件選択・テナントに追加 | API Key / JWT |
/global-tenders/stats | GET | グローバル案件統計情報 | API Key / JWT |
エンドポイント | メソッド | 説明 | 認証 |
---|---|---|---|
/analysis/score | POST | AI受注確率スコアリング | API Key / JWT |
/xai/explain | POST | 説明可能AI分析 | API Key / JWT |
/competitive/analysis | POST | 競合分析(実データベース) | API Key / JWT |
/market/analytics | GET | 市場動向分析 | API Key / JWT |
エンドポイント | メソッド | 説明 | 認証 |
---|---|---|---|
/alerts | GET | アラート一覧取得 | API Key / JWT |
/alerts | POST | 新しいアラート作成 | API Key / JWT |
/alerts/settings | GET | アラート設定取得 | API Key / JWT |
/alerts/settings | PUT | アラート設定更新 | API Key / JWT |
/alerts/test | POST | アラートテスト送信 | API Key / JWT |
エンドポイント | メソッド | 説明 | 認証 |
---|---|---|---|
/proposals/generate | POST | AI提案書生成 | API Key / JWT |
/rag-proposals/create | POST | RAG統合提案書生成 | API Key / JWT |
API Key認証の場合:
X-API-Key: ts_sk_your-api-key
Content-Type: application/json
User-Agent: Your-App/1.0
JWT認証の場合:
Authorization: Bearer jwt-token
X-Tenant-ID: your-tenant-id
Content-Type: application/json
User-Agent: Your-App/1.0
{
"success": true,
"data": { ... },
"timestamp": "2025-07-26T10:00:00Z"
}
{
"success": false,
"error": "Error message",
"error_code": "INVALID_API_KEY",
"timestamp": "2025-07-26T10:00:00Z"
}
curl -X GET "https://tender-scope.com/api/v1/tenders" \
-H "X-API-Key: ts_sk_your-api-key" \
-H "X-Tenant-ID: your-tenant-id" \
-H "Content-Type: application/json" \
-G -d "search=システム開発" \
-d "category=IT・システム開発" \
-d "limit=10"
curl -X POST "https://tender-scope.com/api/v1/analysis/score" \
-H "X-API-Key: ts_sk_your-api-key" \
-H "X-Tenant-ID: your-tenant-id" \
-H "Content-Type: application/json" \
-d '{
"tender_id": "tender-123",
"company_profile": {
"name": "技術株式会社",
"strengths": ["システム開発", "クラウド"],
"past_projects": ["類似案件A", "類似案件B"]
}
}'
HTTPステータス | エラーコード | 説明 | 対処法 |
---|---|---|---|
400 | INVALID_REQUEST | リクエストパラメータが不正 | パラメータを確認して再送信 |
401 | INVALID_API_KEY | APIキーが無効または期限切れ | 新しいAPIキーを生成 |
403 | INSUFFICIENT_PERMISSIONS | 権限不足 | APIキーの権限を確認 |
404 | RESOURCE_NOT_FOUND | リソースが見つからない | URLとIDを確認 |
429 | RATE_LIMIT_EXCEEDED | レート制限に達した | 時間をおいて再試行 |
500 | INTERNAL_SERVER_ERROR | サーバー内部エラー | サポートに連絡 |
• Free: 100リクエスト/時間
• Pro: 1,000リクエスト/時間
• Enterprise: 10,000リクエスト/時間
• Premium Enterprise: 50,000リクエスト/時間
• 制限に達した場合は 429 Too Many Requests
が返されます
• レスポンスヘッダーで残り回数を確認できます
リアルタイム通知を受け取るためのWebhook機能:
/api/v1/webhooks
{
"url": "https://your-app.com/webhooks/tender-scope",
"events": ["tender.created", "tender.updated", "alert.triggered"],
"secret": "webhook-secret"
}
Webhookペイロード例:
{
"event": "alert.triggered",
"data": {
"alert_id": "alert-123",
"tender_id": "tender-456",
"type": "high_score_alert",
"message": "新しい高スコア案件が見つかりました"
},
"timestamp": "2025-07-26T10:00:00Z"
}