チケットリストの取得
このインターフェースは、複数のチケット情報を一度に取得するために使用されます。
リクエストメソッド
GET /api/v1/tickets.json
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| page | いいえ | ページ番号、1から開始、デフォルトは1 |
| per_page | いいえ | 1ページあたりの件数、デフォルト20、最大100 |
レスポンスデータ
| 属性名 | 型 | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| size | 整数 | 今回返されたデータの件数 |
| total | 整数 | データの総数 |
| total_pages | 整数 | 総ページ数 |
| contents | 配列 | チケットリスト、各要素の内容はチケットデータ構造を参照してください |
例
curl https://demo.udesk.cn/api/v1/tickets?page=1&per_page=10&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"size": 1,
"total": 1,
"total_pages": 1,
"contents": [
{
"id": 1,
"subject": "デモチケット",
"content": "これはあなたの最初のチケットです",
"content_type": "text",
"platform": "メール",
"priority": "緊急",
"status": "solving",
"user": "テスト顧客",
"user_email": "test@sample.com",
"user_cellphone": null,
"assignee": "テストオペレーター",
"assignee_id": 1,
"user_group_id": 1,
"user_group_name": "アフターサービス1グループ",
"solving_at": "",
"replied_by": "agent_1",
"custom_fields": {
"TextField_1": "通常テキスト内容",
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2",
"TextField_3": "2016-08-11",
"TextField_4": "14:44:36",
"TextField_5": "2017-05-03 14:44",
"TextField_6": "https://www.sample.com",
"TextField_7": "13",
"TextField_8": "13.33",
"SelectField_1": "0",
"SelectField_2": "0",
"SelectField_3": "0,3"
},
"created_at": "2016-07-28 20:44:08 +0800",
"updated_at": "2017-05-04 14:26:18 +0800"
}
]
}
指定顧客のチケット一覧を取得
このインターフェースは、指定された顧客のすべてのチケット情報を取得するために使用されます。
リクエストメソッド
POST /api/v1/tickets/get.json
リクエストパラメータ(クエリストリング)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| page | いいえ | ページ番号。1から開始、デフォルトは1です。 |
| per_page | いいえ | 1ページあたりの件数。デフォルト20、最大100です。 |
リクエストパラメータ(リクエストボディ)
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| 文字列 | はい | 顧客のメールアドレス |
レスポンスデータ
チケット一覧取得インターフェースと一致します。
例
curl https://demo.udesk.cn/api/v1/tickets/get?page=1&per_page=100&sign=129da7df812jdfsa9912jfdadf81 \
-X POST \
-H 'content-type:application/json' \
-d '{"email":"test@sample.com"}'
レスポンス
{
"status": 0,
"message": "成功",
"size": 1,
"total": 1,
"total_pages": 1,
"contents": [
{
"id": 1,
"subject": "デモチケット",
"content": "これはあなたの最初のチケットです",
"content_type": "text",
"platform": "メール",
"priority": "緊急",
"status": "solving",
"user": "テスト顧客",
"user_email": "test@sample.com",
"user_cellphone": null,
"assignee": "テストオペレーター",
"assignee_id": 1,
"user_group_id": 1,
"user_group_name": "アフターサービス1グループ",
"solving_at": "",
"replied_by": "agent_1",
"custom_fields": {
"TextField_1": "通常テキスト内容",
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2",
"TextField_3": "2016-08-11",
"TextField_4": "14:44:36",
"TextField_5": "2017-05-03 14:44",
"TextField_6": "https://www.sample.com",
"TextField_7": "13",
"TextField_8": "13.33",
"SelectField_1": "0",
"SelectField_2": "0",
"SelectField_3": "0,3",
}
"created_at": "2016-07-28 20:44:08 +0800",
"updated_at": "2017-05-04 14:26:18 +0800"
}
]
}
チケット作成
このインターフェースはチケットを作成するために使用されます。
リクエストメソッド
POST /api/v1/tickets.json
リクエストパラメータ(Request Body)
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| ticket | オブジェクト | はい | チケット情報。詳細は以下を参照してください。 |
ticket の構造
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| subject | 文字列 | はい | タイトル |
| content | 文字列 | はい | 内容 |
| 文字列 | いいえ | 顧客メールアドレス | |
| cellphone | 文字列 | いいえ | 顧客電話番号 |
| customer_token | 文字列 | いいえ | 顧客の外部一意識別子 |
| status | 文字列 | いいえ | ステータス(日本語名)。デフォルトは「開く」です。 |
| priority | 文字列 | いいえ | 優先度(日本語名)。デフォルトは「標準」です。 |
| assignee | オブジェクト | いいえ | 担当カスタマーサポート。詳細は以下を参照してください。 |
| agent_group_name | 文字列 | いいえ | 担当カスタマーサポートグループ名 |
| ticket_field | オブジェクト | いいえ | カスタムフィールド。詳細は以下を参照してください。 |
status、priority の取り得る値については、チケットデータ構造 を参照してください。
assignee の構造
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| name | 文字列 | いいえ | カスタマーサポート名 |
| 文字列 | いいえ | カスタマーサポートメールアドレス |
このインターフェースは、name と email に基づいてカスタマーサポートを検索し、チケットの担当者として設定します。両方のパラメータを指定することも、いずれか一方のみを指定することもできます。
ticket_field
形式は {"カスタムフィールド識別名":"カスタムフィールド値", ...} です。詳細は例を参照してください。
選択タイプの値には、オプションのインデックス値を使用してください。複数選択の場合は、カンマで区切って文字列として連結します。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード。0は成功を表します。 |
| message | 文字列 | 実行結果の説明 |
| ticket_id | 整数 | 新規作成されたチケットのID |
顧客検索戦略
チケット作成時の顧客検索フローは以下の通りです:
- まず
customer_tokenに基づいて顧客を検索し、見つかった場合はその顧客をチケットの顧客として設定します。 - 見つからない場合は、次に
emailに基づいて顧客を検索します。見つかった場合、cellphoneをその顧客に設定しようと試み、チケットの顧客として設定します。 - それでも見つからない場合は、
cellphoneに基づいて検索します。見つかった場合、emailをその顧客に設定しようと試み、チケットの顧客として設定します。 - いずれも見つからない場合は、
customer_token、email、cellphoneを使用して新しい顧客を作成し、チケットの顧客として設定します。
サンプル
curl https://demo.udesk.cn/api/v1/tickets?sign=129da7df812jdfsa9912jfdadf81 \
-X POST \
-H 'content-type:application/json' \
-d '
{
"ticket": {
"subject":"テストチケット1",
"content":"チケットテスト",
"customer_token":"customer_test_1",
"email":"customer@sample.com",
"cellphone":"13123456789",
"priority":"標準",
"status":"対応中",
"agent_group_name":"デフォルトグループ",
"assignee":{
"email":"agent@sample.com"
},
"ticket_field":{
"TextField_1": "通常テキスト内容",
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2",
"TextField_3": "2016-08-11",
"TextField_4": "14:44:36",
"TextField_5": "2017-05-03 14:44",
"TextField_6": "https://www.sample.com",
"TextField_7": "13",
"TextField_8": "13.33",
"SelectField_1": "0",
"SelectField_2": "0",
"SelectField_3": "0,3"
}
}
}'
レスポンス
{
"status":0,
"message":"チケット作成成功",
"ticket_id":2
}
チケット詳細の取得
このAPIは、指定されたIDの単一チケット情報を取得するために使用されます。
リクエストメソッド
GET /api/v1/tickets/:id.json
リクエストパラメータ(URL)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| id | はい | チケットID |
レスポンスデータ
| 属性名 | 型 | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| contents | オブジェクト | チケット情報、チケットデータ構造を参照してください |
サンプル
curl https://demo.udesk.cn/api/v1/tickets/1.json?sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"contents": {
"id": 1,
"subject": "デモチケット",
"content": "これはあなたの最初のチケットです",
"content_type": "text",
"platform": "メール",
"priority": "緊急",
"status": "solving",
"user": "テスト顧客",
"user_email": "test@sample.com",
"user_cellphone": null,
"assignee": "テストオペレーター",
"assignee_id": 1,
"user_group_id": 1,
"user_group_name": "アフターサービス1グループ",
"solving_at": "",
"replied_by": "agent_1",
"custom_fields": {
"TextField_1": "通常テキスト内容",
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2",
"TextField_3": "2016-08-11",
"TextField_4": "14:44:36",
"TextField_5": "2017-05-03 14:44",
"TextField_6": "https://www.sample.com",
"TextField_7": "13",
"TextField_8": "13.33",
"SelectField_1": "0",
"SelectField_2": "0",
"SelectField_3": "0,3"
}
"created_at": "2016-07-28 20:44:08 +0800",
"updated_at": "2017-05-04 14:26:18 +0800"
}
}
チケット更新
このAPIは、指定されたチケットを更新するために使用されます。
リクエストメソッド
PUT /api/v1/tickets/:id.json
リクエストパラメータ(URL)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| id | はい | チケットID |
リクエストパラメータ(Request Body)
| パラメータ名 | 型 | 必須 | 説明 |
|---|---|---|---|
| ticket | オブジェクト | はい | チケット情報、詳細は以下を参照 |
ticket の構造
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| subject | 文字列 | いいえ | タイトル |
| content | 文字列 | いいえ | 内容 |
| status | 文字列 | いいえ | ステータス英語名、デフォルトはopen |
| priority | 文字列 | いいえ | 優先度英語名、デフォルトはmedium |
| agent_email | 文字列 | いいえ | 担当カスタマーサポートのメールアドレス、agent_idと併用不可 |
| agent_id | 整数 | いいえ | 担当カスタマーサポートID、agent_emailと併用不可 |
| agent_group_name | 文字列 | いいえ | 担当カスタマーサポートグループ名、agent_group_idと併用不可 |
| agent_group_id | 整数 | いいえ | 担当カスタマーサポートグループID、agent_group_nameと併用不可 |
| tags | 文字列 | いいえ | タグ、複数ある場合はカンマ区切り |
| follower_emails | 文字列 | いいえ | フォロワーのメールアドレス、複数ある場合はカンマ区切り、follower_idsと併用不可 |
| follower_ids | 文字列 | いいえ | フォロワーID、複数ある場合はカンマ区切り、follower_emailsと併用不可 |
| custom_fields | オブジェクト | いいえ | カスタムフィールド |
| comment | オブジェクト | いいえ | チケット返信、詳細は以下を参照 |
status、priority の取り得る値についてはチケットデータ構造を参照してください。 選択型カスタムフィールドの値は、インデックスではなくオプション名である必要があります。複数選択の場合はカンマ区切りです。詳細は例を参照してください。
comment の構造
comment が空でない場合、チケットに返信が追加されます。
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| function | 文字列 | はい | 返信タイプ |
| author_email | 文字列 | はい | カスタマーサポートのメールアドレス |
| body | 文字列 | はい | 返信内容 |
function の取り得る値
| 値 | 意味 |
|---|---|
| internal | 内部メモ |
| external | 公開返信 |
返却データ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表す |
| message | 文字列 | 実行結果の説明 |
例
curl https://demo.udesk.cn/api/v1/tickets/2?sign=129da7df812jdfsa9912jfdadf81 \
-X PUT \
-H 'content-type:application/json' \
-d '
{
"ticket": {
"priority":"urgency",
"custom_fields":{
"TextField_1": "普通文本内容",
"TextField_2": "多行文本内容1\r\n多行文本内容2",
"TextField_3": "2016-08-11",
"TextField_4": "14:44:36",
"TextField_5": "2017-05-03 14:44",
"TextField_6": "https://www.sample.com",
"TextField_7": "13",
"TextField_8": "13.33",
"SelectField_1": "下拉选项1",
"SelectField_2": "单选框选项1",
"SelectField_3": "多选框选项1,多选框选项4"
}
}
}'
返却
{
"status":0,
"message":"成功"
}
顧客返信の作成
このAPIは、指定されたチケットに対して顧客返信を作成するために使用されます。
リクエストメソッド
POST /api/v1/tickets/reply.json
リクエストパラメータ(Request Body)
| パラメータ名 | タイプ | 必須 | 説明 |
|---|---|---|---|
| id | 整数 | はい | チケットID |
| reply_content | 文字列 | はい | 返信内容 |
| 文字列 | はい | 顧客メールアドレス |
返却データ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表す |
| message | 文字列 | 実行結果の説明 |
サンプル
curl https://demo.udesk.cn/api/v1/tickets/reply?sign=129da7df812jdfsa9912jfdadf81 \
-X POST \
-H 'content-type: application/json' \
-d '
{
"id": 2,
"reply_content": "テスト顧客返信",
"email": "customer@sample.com"
}'
レスポンス
{
"status":0,
"message":"成功",
}
チケットカスタムフィールドの取得
このAPIは、すべてのチケットカスタムフィールド情報を一度に取得するために使用されます。
リクエストメソッド
GET /api/v2/ticket_fields.json
リクエストパラメータ
なし
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| ticket_fields | 配列 | カスタムフィールドのリスト。各要素の構造はチケットカスタムフィールドを参照してください |
このAPIはカスケードフィールドをサポートしていません。カスケードフィールドの情報は取得できますが、そのoptionsの形式は正しくありません。
サンプル
curl https://demo.udesk.cn/api/v2/ticket_fields?sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "success",
"ticket_fields": [
{
"field_name": "TextField_1",
"field_label": "単行テキストフィールド",
"content_type": "text",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_2",
"field_label": "複数行テキストフィールド",
"content_type": "area_text",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_3",
"field_label": "日付フィールド",
"content_type": "date",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_4",
"field_label": "時間フィールド",
"content_type": "time",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_5",
"field_label": "日時フィールド",
"content_type": "datetime",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_6",
"field_label": "リンクフィールド",
"content_type": "link",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_7",
"field_label": "正の整数フィールド",
"content_type": "number",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "TextField_8",
"field_label": "数値フィールド",
"content_type": "numeric",
"comment": null,
"options": null,
"permission": 2,
"requirment": false
},
{
"field_name": "SelectField_1",
"field_label": "ドロップダウンリストフィールド",
"content_type": "droplist",
"comment": null,
"options": [
{"0": "ドロップダウンオプション1"},
{"1": "ドロップダウンオプション2"},
{"2": "ドロップダウンオプション3"}
],
"permission": 2,
"requirment": true
},
{
"field_name": "SelectField_2",
"field_label": "ラジオボタンフィールド",
"content_type": "radio",
"comment": null,
"options": [
{"0": "ラジオボタンオプション1"},
{"1": "ラジオボタンオプション2"}
],
"permission": 2,
"requirment": true
},
{
"field_name": "SelectField_3",
"field_label": "チェックボックスフィールド",
"content_type": "checkbox",
"comment": null,
"options": [
{"0": "チェックボックスオプション1"},
{"1": "チェックボックスオプション2"},
{"2": "チェックボックスオプション3"},
{"3": "チェックボックスオプション4"}
],
"permission": 2,
"requirment": false
}
]
}
チケットフィルターリストの取得
このインターフェースは、複数のチケットフィルター情報を一度に取得するために使用されます。
リクエストメソッド
GET /api/v1/ticket_filters.json
リクエストパラメータ(クエリストリング)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| agent_id | いいえ | このパラメータを渡すと、そのオペレーターのチケットフィルターのみを返します。それ以外の場合は会社の全フィルターを返します。 |
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| count | 整数 | データ件数 |
| contents | 配列 | チケットフィルターリスト、詳細は以下を参照 |
contents 内の要素の構造
| 属性 | タイプ | 説明 |
|---|---|---|
| id | 整数 | 一意の識別子、システムにより自動生成 |
| name | 文字列 | フィルター名 |
| description | 文字列 | 説明 |
| active | ブール値 | 有効かどうか |
| permission | 文字列 | 権限 |
| tickets_url | 文字列 | このフィルターに対応するチケットリストインターフェースの呼び出しURL |
| created_at | 日時 | 作成日時 |
| updated_at | 日時 | 更新日時 |
例
curl https://demo.udesk.cn/api/v1/ticket_filters?sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"count": 1,
"contents": [
{
"id": 1,
"name": "私の未解決チケット",
"description": null,
"active": true,
"permission": "All",
"created_at": "2017-03-17 13:30:19 +0800",
"updated_at": "2017-03-17 13:30:19 +0800",
"tickets_url": "https://demo.udesk.cn/api/v1/ticket_filters/2/tickets"
}
]
}
チケットフィルターのクエリ結果を取得
このインターフェースは、指定されたチケットフィルターで絞り込まれたチケット情報を取得するために使用されます。
リクエストメソッド
GET /api/v1/ticket_filters/:id/tickets.json
リクエストパラメータ(URL内)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| id | はい | チケットフィルターID |
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| agent_id | いいえ | カスタマーサポートID、デフォルトは管理者ID |
| page | いいえ | ページ番号、デフォルトは1 |
| per_page | いいえ | 1ページあたりのレコード数、デフォルトは20、最大値は100 |
レスポンスデータ
チケットリスト取得インターフェースと一致します。
例
リクエスト
curl https://demo.udesk.cn/api/v1/ticket_filters/1/tickets?sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"size": 1,
"total": 1,
"total_pages": 1,
"contents": [
{
"id": 1,
"subject": "デモチケット",
"content": "これはあなたの最初のチケットです",
"content_type": "text",
"platform": "メール",
"priority": "緊急",
"status": "solving",
"user": "テスト顧客",
"user_email": "test@sample.com",
"user_cellphone": null,
"assignee": "テストカスタマーサポート",
"assignee_id": 1,
"user_group_id": 1,
"user_group_name": "アフターサービス1グループ",
"solving_at": "",
"replied_by": "agent_1",
"custom_fields": {
"TextField_1": "通常テキスト内容",
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2",
"TextField_3": "2016-08-11",
"TextField_4": "14:44:36",
"TextField_5": "2017-05-03 14:44",
"TextField_6": "https://www.sample.com",
"TextField_7": "13",
"TextField_8": "13.33",
"SelectField_1": "0",
"SelectField_2": "0",
"SelectField_3": "0,3",
}
"created_at": "2016-07-28 20:44:08 +0800",
"updated_at": "2017-05-04 14:26:18 +0800"
}
]
}
データ構造-チケット
| 属性 | 型 | 編集可能 | 説明 |
|---|---|---|---|
| id | 整数 | いいえ | 一意の識別子、システムにより自動生成 |
| subject | 文字列 | はい | タイトル |
| content | 文字列 | はい | 内容 |
| content_type | 文字列 | はい | コンテンツタイプ |
| platform | 文字列 | はい | チャネル日本語名 |
| priority | 文字列 | はい | 優先度日本語名 |
| status | 文字列 | はい | ステータス英語名 |
| user | 文字列 | いいえ | 顧客名 |
| user_email | 文字列 | いいえ | 顧客メールアドレス |
| user_cellphone | 文字列 | いいえ | 顧客電話番号 |
| assignee_id | 整数 | はい | 担当カスタマーサポートID |
| assignee | 文字列 | いいえ | 担当カスタマーサポート名 |
| user_group_id | 整数 | はい | 担当カスタマーサポートグループID |
| user_group_name | 文字列 | いいえ | 担当カスタマーサポートグループ名 |
| custom_fields | オブジェクト | はい | カスタムフィールド |
| replied_by | 文字列 | いいえ | 最終返信者 |
| solving_at | 日時 | いいえ | 解決開始時間 |
| created_at | 日時 | いいえ | 作成時間、システムにより自動生成 |
| updated_at | 日時 | いいえ | 更新時間、システムにより自動生成 |
content_type 取り得る値
| 値 | 意味 |
|---|---|
| text | プレーンテキスト |
| html | リッチテキスト |
platform 取り得る値
| 日本語名 | 英語名 |
|---|---|
| メール | |
| 微博 | |
| 微信 | |
| インスタントメッセージ | im |
| 電話 | call |
| フィードバックタグ | feedback |
| ヘルプセンター | hc |
| 手動入力 | manual_input |
| API | api |
priority の取り得る値
| 日本語名称 | 英語名称 |
|---|---|
| 緊急 | urgency |
| 高 | high |
| 標準 | medium |
| 低 | low |
status の取り得る値
| 日本語名称 | 英語名称 |
|---|---|
| オープン | open |
| 対応中 | solving |
| 解決済み | resolved |
| クローズ済み | closed |
custom_fields
各種タイプのカスタムフィールドの例は以下の通りです:
"custom_fields": {
"TextField_1": "通常テキスト内容", // 通常テキスト
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2", // 複数行テキスト
"TextField_3": "2016-08-11", // 日付
"TextField_4": "14:44:36", // 時間
"TextField_5": "2017-05-03 14:44", // 日時
"TextField_6": "https://www.sample.com", // リンク
"TextField_7": "13", // 正の整数
"TextField_8": "13.33", // 数値
"SelectField_1": "0", // ドロップダウンリスト、オプション1
"SelectField_2": "0", // ラジオボタン、オプション1
"SelectField_3": "0,3", // チェックボックス、オプション1、オプション4
"SelectField_4": "0,0,0" // カスケード
}
選択タイプのカスタムフィールドのオプションインデックスをオプション名に変換する方法については、チケットカスタムフィールド取得APIをご参照ください。
データ構造-チケットカスタムフィールド
| 属性 | タイプ | 編集可能 | 説明 |
|---|---|---|---|
| field_name | 文字列 | いいえ | 識別名 |
| field_label | 文字列 | はい | 名称 |
| content_type | 文字列 | いいえ | タイプ |
| comment | 文字列 | はい | 備考 |
| options | 配列 | いいえ | 選択タイプカスタムフィールドのオプション |
| permission | 整数 | はい | 顧客権限 |
| requirement | ブール値 | はい | 必須項目かどうか(廃止済み) |
content_type の取り得る値
| 値 | 意味 |
|---|---|
| text | 単行テキスト |
| area_text | 複数行テキスト |
| date | 日付 |
| time | 時間 |
| datetime | 日時 |
| link | リンク |
| number | 正の整数 |
| numeric | 数値 |
| droplist | ドロップダウンリスト |
| checkbox | チェックボックス |
| radio | ラジオボタン |
| chained_droplist | カスケード |
permission の取り得る値
| 値 | 意味 |
|---|---|
| 0 | 顧客には非表示 |
| 1 | 顧客は閲覧可能だが編集不可 |
| 2 | 顧客は編集可能 |
| 3 | 顧客は必須入力 |
options の説明
ドロップダウンリスト、チェックボックス、ラジオボタンなどの選択タイプのカスタムフィールドには options 属性が含まれます。その形式は以下の通りです。
[{"オプションインデックス":"オプション名"}, ...]
例えば、ラジオボタン「性別」の options は以下のようになる可能性があります。
{
"options": [
{"0": "男性"},
{"1": "女性"},
{"2": "非公開"}
]
}
カスタムフィールドとその値の設定方法
カスタムフィールドはテキストタイプと選択タイプに分けられます。テキストタイプの値は特定の形式に合致する文字列であり、選択タイプの値はそのオプションのインデックス値です。
以下では、チケットを例にカスタムフィールドの設定方法を説明します。
以下のようなチケットカスタムフィールドがあると仮定します。
[
{
"field_name": "TextField_1",
"field_label": "単行テキストフィールド",
"content_type": "text",
},
{
"field_name": "TextField_2",
"field_label": "複数行テキストフィールド",
"content_type": "area_text",
},
{
"field_name": "TextField_3",
"field_label": "日付フィールド",
"content_type": "date",
},
{
"field_name": "TextField_4",
"field_label": "時間フィールド",
"content_type": "time",
},
{
"field_name": "TextField_5",
"field_label": "日時フィールド",
"content_type": "datetime",
},
{
"field_name": "TextField_6",
"field_label": "リンクフィールド",
"content_type": "link",
},
{
"field_name": "TextField_7",
"field_label": "正の整数フィールド",
"content_type": "number",
},
{
"field_name": "TextField_8",
"field_label": "数値フィールド",
"content_type": "numeric",
},
{
"field_name": "SelectField_1",
"field_label": "ドロップダウンリストフィールド",
"content_type": "droplist",
"options": [
{"0": "ドロップダウンオプション1"},
{"1": "ドロップダウンオプション2"},
{"2": "ドロップダウンオプション3"}
],
},
{
"field_name": "SelectField_2",
"field_label": "ラジオボタンフィールド",
"content_type": "radio",
"options": [
{"0": "ラジオボタンオプション1"},
{"1": "ラジオボタンオプション2"}
],
},
{
"field_name": "SelectField_3",
"field_label": "チェックボックスフィールド",
"content_type": "checkbox",
"options": [
{"0": "チェックボックスオプション1"},
{"1": "チェックボックスオプション2"},
{"2": "チェックボックスオプション3"},
{"3": "チェックボックスオプション4"}
],
}
]
あるチケットにおいて、それは以下のように表されます。
{
"ticket": {
"custom_fields": {
"TextField_1": "通常のテキスト内容", // 通常テキスト
"TextField_2": "複数行テキスト内容1\r\n複数行テキスト内容2", // 複数行テキスト
"TextField_3": "2016-08-11", // 日付
"TextField_4": "14:44:36", // 時間
"TextField_5": "2017-05-03 14:44", // 日時
"TextField_6": "https://www.sample.com", // リンク
"TextField_7": "13", // 正の整数
"TextField_8": "13.33", // 数値
"SelectField_1": "0", // ドロップダウンリスト、ドロップダウンオプション1
"SelectField_2": "0", // ラジオボタン、ラジオボタンオプション1
"SelectField_3": "0,3", // チェックボックス、チェックボックスオプション1、チェックボックスオプション4
}
}
}
statusエラーコード説明
| エラーコード | message情報 | 説明 |
|---|---|---|
| 1001 | 状態エラー | パラメータ{status}が有効範囲内にありません |
| 優先度エラー | パラメータ{priority}が有効範囲内にありません | |
| カスタマーサポートメールアドレスエラー | パラメータ{email}がカスタマーサポートデータに一致しません | |
| カスタマーサポート情報エラー | パラメータ{assignee}内のemailまたはnameが誤っています | |
| カスタマーサポート氏名エラー | パラメータ{assignee}にnameのみが渡され、そのnameが誤っています | |
| カスタマーサポートグループエラー | パラメータ{agent_group_name}がカスタマーサポートグループデータに一致しません | |
| 検証失敗: ql-リンク は正しいURL形式ではありません, http, https または ftp で始まるURLのみサポートされています | urlの前にプロトコルタイプ(http:,https:)を追加する必要があります | |
| カスタマーサポートが見つかりません | パラメータ{agent_id}がカスタマーサポートデータに一致しません | |
| 指定されたフィルターが見つからないか、指定されたカスタマーサポートがそのフィルターを使用する権限を持っていません | パラメータ{email}がカスタマーサポートデータに一致しません | |
| カスタマーサポート | チケットフィルターパラメータが存在しないか、指定されたカスタマーサポートがそれを使用する権限を持っていません | |
| 1002 | 該当する顧客が見つかりません | パラメータ{email}で顧客データが見つかりません |
| 1003 | 該当するチケットが見つかりません | チケットIDエラー チケットが存在しません |
| 1004 | 該当する顧客が見つかりません | パラメータ{email}が顧客データに一致しません |
| 1006 | パラメータ'状態'の渡し方が誤っています | パラメータ{status}が有効範囲内にありません |
| 1008 | メールアドレスがXXXのカスタマーサポートが見つかりません | パラメータ{agent_email}がカスタマーサポートデータに一致しません |
| 1010 | 指定されたカスタマーサポートは指定された従業員グループに属していません | パラメータ{agent_id}が表す従業員とパラメータ{agent_id} |
| 1013 | 返信タイプが不正です | パラメータ{function}の内容が誤っており、有効範囲内にありません |
| 1013 | 返信者が存在しません | パラメータ{author_email}が誤っており、データに一致しません |
| 2002 | 署名エラー, バージョンをアップグレードしてから使用してください! | パラメータ{sign}が誤っており、認証に失敗しました |
errorエラー説明
| error情報 | 説明 |
|---|---|
| agent_email, agent_id are mutually exclusive | パラメータ{agent_email}と{agent_id}が同時に渡されました |
| email is missing | 必須パラメータ{email}が入力されていません |
| per_page should be between 1 and 100 | パラメータ{per_page}が有効範囲内にありません |
| ticket[content] is missing | 必須パラメータ{content}が入力されていません |