概要
一般原則
HTTP リクエスト方法
KCSサービスは、可能な限り標準的なHTTPとRESTに近づくよう努めています。
| リクエスト方法 | 用途 |
|---|---|
GET |
リソースの取得 |
POST |
新しいリソースの作成またはリソースのクエリ |
PUT |
既存リソースの更新 |
DELETE |
既存リソースの削除 |
HTTP ステータスコード
KCSサービスは、可能な限り標準的なHTTPとRESTに近づくよう努めています。
| ステータスコード | 用途 |
|---|---|
200 OK |
HTTPリクエスト成功時の標準応答。実際の応答はリクエスト方法によって異なります。 |
400 Bad Request |
クライアントエラーのため、サーバーがリクエストを処理できない、または処理しない場合。 |
401 Unauthorized |
認証されていません。 |
404 Not Found |
リクエストされたリソースが見つかりません。 |
500 Internal Server Error |
サーバー内部エラー。 |
呼び出しアドレス
フォーマット
https://{tenant_kcs_domain}/api/sdk/{relative address}
括弧で囲まれた部分の意味は以下の通りです:
| 変数 | 説明 |
|---|---|
| tenant_kcs_domain: テナントKCSドメイン | テナント自身のKCSドメイン、例:knowledgeservice.udesk.cn |
| relative address: インターフェース相対アドレス | APIの相対URL |
例 認証トークンを取得するための完全なインターフェースアドレス:
https://knowledgeservice.udesk.cn/api/auth/open/token
認証方法
認証トークンの取得
パラメータ
| 名称 | 説明 |
|---|---|
| appId | テナントの一意識別子であり、テナントの認証識別子でもあります。Udesk担当者に連絡して取得してください。 appIdの取得方法:KCSページにログイン-->ホームページ-->F12を開く→initインターフェース |
| userId | ユーザーID、【ユーザーセンター管理プラットフォーム--ユーザー管理】にログインし、ページ上で確認できるユーザーID |
戻り値 認証トークンを取得するログインはtokenを返します。他のインターフェースでは以下のリクエストパラメータを追加する必要があります:
Authorization Bearer {{token}}
有効期限 50分ごとに失効します。トークンを再取得する必要があります。
インターフェースレート制限
SDKインターフェースは、GuavaのRateLimiterを使用してインターフェースのレート制限を実装しています。
2種類のレート制限方法
1. グローバル統一制御(現在使用中)
@RateLimit(permitsPerSecond = "${rate.limit.adapter.out.permitsPerSecond}", timeout = "${rate.limit.adapter.out.timeout}")
ymlファイルで設定します:
rate:
limit:
default:
enabled: true
adapter:
out:
permitsPerSecond: 8 # 1秒あたり最大8リクエスト
timeout: 100 # トークン取得の最大待機時間は100ミリ秒
2、カスタムレート制限パラメータの使用(カスタムレート制限が優先されます。設定されている場合はカスタム設定を使用し、設定されていない場合は設定ファイルを使用します)
@RateLimit(permitsPerSecond = "8", timeout = "100")