座席発信
このAPIは、座席からの発信を開始するために使用されます。
リクエストメソッド
POST /open_api/callcenter/agent_callout
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| agent_email | はい | カスタマーサポート担当者のメールアドレス |
| number | はい | 発信先電話番号 |
| timestamp | はい | 現在のタイムスタンプ。形式は"YYYYmmddHHMMSS" |
timestamp と現在時刻の誤差は5分以内である必要があります。 カスタマーサポート担当者はオンライン状態である必要があります。現在IP電話モードの場合、IP電話はオンライン状態である必要があります。
このAPIの認証方法については認証方法を参照してください。ただし、Query Stringの順序は "agent_email + number + timestamp" でなければなりません。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| code | 整数 | 実行結果コード。1000は成功を表します |
| call_id | 文字列 | 通話ID |
例
curl -X POST https://demo.udesk.cn/open_api/callcenter/agent_callout?agent_email=agent@demo.com&number=13100000001×tamp=20060102150405&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"code":1000,
"call_id":"3012@20170513141238282643-z95780414b7bda46-out"
}
カスタマーサポート担当者のオンライン方式の確認
このAPIは、カスタマーサポート担当者のオンライン方式を確認するために使用されます。
リクエストメソッド
GET /open_api/callcenter/agent_work_way
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| agent_email | はい | カスタマーサポート担当者のメールアドレス |
| timestamp | はい | 現在のタイムスタンプ。形式は"YYYYmmddHHMMSS" |
timestamp と現在時刻の誤差は5分以内である必要があります。
このAPIの認証方法については認証方法を参照してください。ただし、Query Stringの順序は "agent_email + timestamp" でなければなりません。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| code | 整数 | 実行結果コード 1000 成功を表します 3003 ログインメールアドレスが空です 11011 該当従業員が存在しないか、削除されています 11008 該当従業員にコールセンター権限がありません 2059 open_apiの署名が正しくありません 2010 無効なカスタマーサポート担当者の作業方式です(通常の作業状態はfixed_voip_online, phone_online) 20621 タイムスタンプの形式が正しくありません 20622 タイムスタンプの誤差は5分以内である必要があります |
| agent_work_way | 文字列 | カスタマーサポート担当者のオンライン方式。詳細はagent_work_wayを参照してください。 |
| ### サンプル |
curl -X GET 'https://demo.udesk.cn/open_api/callcenter/agent_work_way?agent_email=lige@udesk.cn×tamp=20190702172021&sign=6dd4c035dcc3c43124dfb1edb53db97b'
レスポンス
{
"code":1000,
"agent_work_way":"fixed_voip_online"
}
カスタマーサポートのオンライン方式を設定
このAPIは、カスタマーサポートのオンライン方式を設定するために使用されます。
リクエストメソッド
POST /open_api/callcenter/agent_work_way
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| agent_email | はい | カスタマーサポートのメールアドレス |
| agent_work_way | はい | カスタマーサポートのオンライン方式 |
| timestamp | はい | 現在のタイムスタンプ。形式は"YYYYmmddHHMMSS" |
timestamp と現在時刻の誤差は5分以内である必要があります。
このAPIの認証方法については認証方法を参照してください。ただし、Query String の順序は必ず「agent_email + agent_work_way + timestamp」である必要があります。
レスポンスデータ
| 属性名 | 型 | 説明 |
|---|---|---|
| code | 整数型 | 実行結果コード 1000 成功を表す 3003 ログインメールアドレスが空です 11011 該当スタッフは存在しないか、削除されています 11008 該当スタッフはコールセンター権限を持っていません 2059 open_apiの署名が正しくありません 2010 無効なカスタマーサポート作業方式です(正常な作業状態はfixed_voip_online, phone_online) 20621 タイムスタンプの形式が正しくありません 20622 タイムスタンプの誤差は5分以内である必要があります |
サンプル
curl -X POST 'https://demo.udesk.cn/open_api/callcenter/agent_work_way?agent_email=lige@udesk.cn&agent_work_way=fixed_voip_online×tamp=20190702184721&sign=8d8fb3d5831a1a8f9972abf6394c9866'
レスポンス
{
"code":1000
}
詳細説明
| パラメータ名 | 値 | 説明 |
|---|---|---|
| agent_work_way | fixed_voip_online | IP電話 |
| phone_online | 従来型電話(携帯電話/固定電話) |
通話記録の取得
このインターフェースは、call_idを使用して通話記録情報を取得するために使用されます。
リクエストメソッド
GET /open_api/callcenter/call_log
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| call_id | いいえ | 通話記録ID |
| conversation_id | いいえ | セッションID |
| timestamp | はい | 現在のタイムスタンプ、形式は"YYYYmmddHHMMSS" |
timestamp と現在時刻の誤差は5分以内である必要があります。 call_id と conversation_id の少なくとも一方を入力する必要があり、空にすることはできませんが、両方を同時に渡すことはできません。
このインターフェースの認証方法については認証方法を参照してください。ただし、Query String の順序はtimestampを最後に配置する必要があります。例:"call_id + timestamp"
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| code | 整数型 | 実行結果コード、1000は成功を表します |
| call_log | オブジェクト | 通話記録情報 |
call_logのデータ構造
| 属性名 | タイプ | 説明 |
|---|---|---|
| customer_name | 文字列 | 顧客名 |
| customer_number | 文字列 | 顧客電話番号 |
| mobile_area | 文字列 | 地域(電話番号の帰属地) |
| call_type | 文字列 | 通話タイプ、「着信」または「発信」 |
| seat_type | 文字列 | 通話方法、「IP固定電話」または「携帯電話」 |
| result | 文字列 | 通話結果、「接続」、「顧客未接続」または「サポート未接続」 |
| duration | 整数型 | セッション時間 |
| record_url | 文字列 | 通話録音ファイルのURL |
| satisfic | 文字列 | 満足度評価、「満足」、「不満足」、「未評価」または「評価不要」 (クイックルーティングのデフォルト満足度評価のみをサポート。可能な限りsurveyフィールドを使用してください) |
| survey | 文字列 | 満足度評価(新しい満足度評価フィールド。インテリジェントルーティングのカスタム満足度評価をサポートし、クイックルーティングのデフォルト満足度評価とも互換性があります) |
| start_time | 日時 | 発信時間 |
| agent_name | 文字列 | サポート担当者名 |
| agent_email | 文字列 | サポート担当者メールアドレス |
| ringing_duration | 文字列 | 呼び出し音時間(着信音時間) |
| end_time | 日時 | 通話終了時間 |
| customer_id | 整数型 | 顧客ID |
| note_id | 整数型 | 業務記録ID |
| trunk_number | 文字列 | 中継番号 |
| call_source | 文字列 | 発信元 |
| query_type | 文字列 | 待機状態 |
| query_time | 整数型 | 待機時間 |
| leave_message | 文字列 | 留守番メッセージ |
| drop_side | 文字列 | 通話終了側 |
| ivr_time | 整数型 | IVR時間 |
| organization_id | 文字列 | 顧客所属会社ID |
| has_subsequent_call | boolean | 後続通話の有無(true, false, null) |
| queue_overflow | 文字列 | オーバーフローキュー |
| ad_task_name | 文字列 | 自動発信タスク名 |
| ivr_variables | 文字列 | IVR変数 |
| defeat_cause | 文字列 | 発信失敗原因(有効化後に表示) |
| outline_phone_number | 文字列 | 外線番号 |
| multi_ring_count | 整数型 | 順次呼び出し回数 |
| tickets | 文字列配列 | チケット番号 |
| ### サンプル |
curl https://demo.udesk.cn/open_api/callcenter/call_log?call_id=3012@20170513141238282643-z95780414b7bda46-out×tamp=20060102150405&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"code": 1000,
"call_log": {
"customer_name": "テスト顧客",
"customer_number": "13100000001",
"mobile_area": "北京",
"call_type": "発信",
"seat_type": "IP電話",
"result": "オペレーター応答なし",
"duration": 0,
"record_url": null,
"satisfic": "評価不要",
"survey": "評価不要",
"start_time": "2006-01-02T15:04:05.000+08:00",
"agent_name": "テストオペレーター",
"agent_email": "agent@demo.com",
"ringing_duration": null,
"end_time": null,
"customer_id": 7978,
"note_id": null,
"trunk_number": "テスト 057126200671",
"call_source": "キュー:喬喬范",
"query_type": "キューイング成功",
"query_time": 0,
"leave_message": "いいえ",
"drop_side": "",
"ivr_time":15,
"has_subsequent_call":true ,
"queue_overflow":"責任者;aキュー;bキュー" ,
"ad_task_name":"私の自動発信",
"ivr_variables": "a:12;b:13",
"defeat_cause": null,
"outline_phone_number": "13254110120",
"multi_ring_count": 10,
"tickets": ["#123", "#234"]
}
}
通話記録リストの取得
このAPIは、複数の通話記録情報を一度に取得するために使用されます。
リクエストメソッド
GET /api/v2/ucpapp/calllogs
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| start_time | はい | 検索開始時間 |
| end_time | いいえ | 検索終了時間 |
| page | いいえ | ページ番号、1から開始、デフォルトは1 |
| page_size | いいえ | 1ページあたりの件数、デフォルト30、最大100 |
- start_time と end_time の形式は "YYYY-MM-DD hh:mm:ss" です。時間部分を省略して "YYYY-MM-DD" とすることもできます。
- start_time パラメータは必須です。指定しない場合、空のデータが返されます。また、記録取得の時間範囲は30日以内に制限されています。
- このAPIの認証方法については、認証方法 を参照してください。
返却データ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表す |
| message | 文字列 | 実行結果の説明 |
| size | 整数 | 今回の返却数 |
| total | 整数 | データ総数 |
| total_pages | 整数 | データ総ページ数 |
| item | 配列 | 通話記録配列 |
item 要素のデータ構造
| 属性名 | タイプ | 説明 |
|---|---|---|
| id | 整数 | ユニーク識別子 |
| note_id | 整数 | 業務記録ID |
| call_start_at | 日時 | 通話開始時間 |
| call_type | 文字列 | 通話タイプ、「着信」または「発信」 |
| call_number | 文字列 | 発信者番号 |
| mobile_area | 文字列 | 番号の地域 |
| trunk_number | 文字列 | 中継番号 |
| user_name | 文字列 | 顧客氏名 |
| user_id | 整数 | 顧客ID |
| call_source | 文字列 | 通話ソース、「カスタマーサポート: xx」、「キュー: xx」、「担当者: xx」、「キュー未選択」 |
| queue_type | 文字列 | 待機状態、「待機成功」、「待機放棄」、「待機タイムアウト」、「オンラインエージェント不在」 |
| queue_time | 整数 | 待機時間 |
| agent_id | 整数 | エージェントID |
| agent_nick_name | 文字列 | エージェント氏名 |
| device_info | 文字列 | デバイス状態、「IP電話」、「携帯電話」 |
| call_result | 文字列 | 通話結果、「顧客未応答」、「顧客応答」、「エージェント未応答」、「エージェント拒否」、「エージェント応答」、「キュー未選択」 |
| ring_time | 整数 | 呼出時間 |
| drop_side | 文字列 | 切断側、「顧客」、「エージェント」 |
| call_time | 整数 | 通話時間 |
| record_url | 文字列 | 録音ファイルURL |
| leave_message | 文字列 | メッセージ |
| organization_id | 文字列 | 顧客所属企業ID |
| satisfaction | 文字列 | 満足度評価、「満足」、「不満」、「未評価」または「評価不要」 (クイックルーティングのデフォルト満足度評価のみ対応。可能な限りsurveyフィールドを使用してください) |
| survey | 文字列 | 満足度評価(新しい満足度評価フィールド。インテリジェントルーティングのカスタム満足度評価に対応し、クイックルーティングのデフォルト満足度評価とも互換性あり) |
| ivr_time | 整数 | IVR時間 |
| has_subsequent_call | boolean | 後続通話の有無(true, false, null) |
| queue_overflow | 文字列 | オーバーフローキュー |
| ad_task_name | 文字列 | 自動発信タスク名 |
| ivr_variables | 文字列 | IVR変数 |
| defeat_cause | 文字列 | 発信失敗原因(有効化後に表示) |
| outline_phone_number | 文字列 | 外線番号 |
| multi_ring_count | 整数 | 順次呼出回数 |
| tickets | 文字列配列 | チケット番号 |
| ### サンプル |
curl https://demo.udesk.cn/api/v2/ucpapp/calllogs?start_time=2017-03-02%2012:00:22&end_time=2017-03-12%2012:00:22&page=1&page_size=30&sign=129da7df812jdfsa9912jfdadf81
- 注: curlリクエストでは、URL内のスペースを%20に置き換えてください。
レスポンス
{
status: 0,
message: "成功",
item: [
{
id: 46,
note_id: 99,
call_start_at: "2016-08-02 10:23:45",
call_type: "発信",
call_number: "134 **** 5615",
mobile_area: "北京",
trunk_number: "010 **** 7937",
user_name: "李**",
user_id: 5,
call_source: "キュー:xx",
queue_type: "キューイング成功",
queue_time: 4,
agent_id: 6,
agent_nick_name: "邢**",
device_info: "IP電話",
call_result: "顧客応答",
ring_time: 14,
drop_side: "サポート担当者",
call_time: 8,
record_url: "https://www.XXXX.com/fileserver/record/1971j160802?sig=b162b24cab561d24",
leave_message: "いいえ",
satisfaction: "評価不要",
organization_id: 13,
survey: "評価不要",
ivr_time: 15,
has_subsequent_call:null ,
queue_overflow:"責任者;aキュー;bキュー" ,
ad_task_name:"私の自動発信",
ivr_variables: "a:12;b:13",
defeat_cause: null,
outline_phone_number: "13254110120",
multi_ring_count: 0,
tickets: ["#123", "#234"]
}
],
size: 1,
total: 1,
total_pages: 1
}
agent_api_tokenの取得
リクエストメソッド
POST /open_api_v1/get_agent_token
リクエストヘッダー
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| content_type | はい | 固定値、application/json |
リクエストパラメータ
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| agent_email | はい | サポートスタッフのメールアドレス |
- 注:このインターフェースはopen_api_v1部分のインターフェースにアクセスします。リクエストURLに認証パラメータを追加する必要があります。認証はv2の認証方法を参照してください。
レスポンスデータ
| 属性名 | 型 | 説明 |
|---|---|---|
| code | 整数型 | 実行結果コード、1000は成功を表します |
| agent_api_token | 文字列型 |
例
curl https://example.udesk.cn/open_api_v1/get_agent_token?email=udesk@admin.com×tamp=1581111111&nonce=abc1001001001001001001&sign=c1760b7d75c0f1fb6a99f8ad1d0f3864e934f9a53fdcdea1d4aa95da7b58ae6d&sign_version=v2 \
-X POST \
-H 'content-type: application/json' \
-d '{
"agent_email":"kefu@udesk.cn"
}'
レスポンス
{
"code": 1000,
"agent_api_token": "2557da332258a5d62272d00e3e2e52b5d2a83a2878059e15a2dd107c3e25a8f20a776a402bc8f69431698f49d2dba1bcc794d986453f76218681cc9022bdb717591a5d90"
}
codeエラーコード説明
| エラーコード | message情報 | exception:message | 説明 |
|---|---|---|---|
| 2005 | 該当リソースが見つかりません | Couldn't find User with [ WHERE users.company_id = ? AND users.role_id = 2 AND users.email = ? ] |
パラメータエラー、データが見つかりません |
| 2010 | 無効なサポートスタッフの作業方式です(通常の作業状態はfixed_voip_online, phone_online) | 同上 | パラメータ{agent_work_way}の値が有効範囲外です |
| 2015 | 管理者以外は操作できません | 同上 | 認証パラメータ{sign}エラー、認証に失敗しました |
| 2059 | open api署名が正しくありません | 同上 | 認証パラメータ{sign}エラー、認証に失敗しました |
| 3003 | ログインメールアドレスが空です | 同上 | 必須パラメータ{agent_email}が入力されていません |
| 11011 | 該当スタッフは存在しないか、削除されています | 同上 | パラメータ{agent_email}エラー、一致する値が見つかりません |
| 11008 | 該当スタッフはコールセンター権限を持っていません | 同上 | パラメータ{agent_email}に対応するスタッフがコールセンター権限を持っていません |
| 20621 | タイムスタンプの形式が正しくありません | 同上 | 必須パラメータ{timestamp}が入力されていないか、形式が誤っています |
| 20622 | タイムスタンプの誤差は5分を超えることはできません | 同上 | パラメータ{timestamp}と現在時刻の差が5分を超えています |
| 20623 | リクエストは一度のみ有効です、15分以内にnonce値を重複させることはできません | 同上 | 認証パラメータ{nonce}が15分以内に既に使用されています |
| 20624 | open api nonceが空です | 同上 | 認証パラメータ{nonce}が入力されていないか、空です |
| ## statusエラーコード説明 |
| エラーコード | message情報 | 説明 |
|---|---|---|
| 2000 | 最大30日分のデータを一度に取得できます | データ取得の時間範囲は30日以内です。これを超えるとこのエラーが発生します。パラメータ{start_time}のみ指定した場合、このパラメータと現在時刻の間隔が30日を超えています |
| 3000 | 1ページあたり最大100件の通話記録を取得できます | パラメータ{page_size}の値が100を超えており、許容範囲外です |
| 1ページあたりの取得件数は1以上である必要があります | パラメータ{page_size}の値が1未満であり、許容範囲外です |