タスク管理
タスク作成
URL
https://email.api.engagelab.cc/v1/marketing/campaigns
HTTPリクエストメソッド
POST
Content-Type
application/json; charset=utf-8
リクエストヘッダー
ヘッダー | タイプ | 必須 | 説明 |
---|---|---|---|
Authorization | string | true | Basic base64(api_user:api_key) |
ボディパラメータ
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
campaign_type | integer | true | タスクタイプ 1: A/Bタスク, 2: 通常タスク |
name | string | true | タスク名 (最大64文字) |
to | object[] | true | 受信者、現在は配列長1をサポート |
reply_to | string | false | 返信アドレス |
sender_id | string | * | 送信者ID (通常タスクのみ対応) |
template_invoke_name | string | * | メールテンプレート呼び出し名 (通常タスクのみ対応) |
subject | string | * | メール件名、メールテンプレートに含まれる件名より優先される。A/Bタスクがコンテンツテストの場合は必須。 |
send_time | string | * | 送信時間 (通常タスクのみ対応)、例: 2022-10-19 19:35:20 |
time_zone | integer | * | デフォルトは+8タイムゾーン |
attachments | object[] | false | メール添付ファイル (最大10個の添付ファイル) |
filename | string | false | 添付ファイル名、例: example.pdf |
content | string | false | 添付ファイル内容のBase64エンコード |
ab_test | object | * | A/Bタスクの設定パラメータ (A/Bタスクのみ対応) |
google_track | object | false | google_track設定パラメータ (通常タスクのみ対応) |
warm_up | object[] | false | ウォームアップ送信設定パラメータ (通常タスクのみ対応) |
注意:
- 添付ファイル全体のサイズは10MBを超えてはなりません。注意: Base64エンコード後、ファイルサイズが若干増加します。10MBの制限はBase64エンコード前のサイズを指します。
パラメータ to
のフォーマット:
[
{
"type": "list",
"value": ["all"]
}
]
[
{
"type": "tag",
"value": ["tag1"]
}
]
[
{
"type": "segment",
"value": ["segment1"]
}
]
パラメータ ab_test
のフォーマット:
キャンペーンがA/Bタスクの場合、パラメータ ab_test
は必須です。
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
ab_test | object | true | A/Bタスク設定データ |
percent | integer | true | 割合設定、範囲 [1, 100]。20は20%の連絡先がテスト受信者で、残りは勝利条件に基づいて送信されることを意味します。 |
win_condition | object | true | A/B勝者を決定する条件 |
time_unit | string | true | 時間単位: day, hour |
after_time | integer | true | 勝利条件が計算される時間。時間単位が時間の場合、範囲は[0-23]、日単位の場合、範囲は[0-10]。 |
compare | string | true | 比較フィールド。可能な値: open_percent, click_percent, uni_open_percent, uni_click_percent, delivered_percent。 |
template_invoke_names | string[] | * | メールテンプレートテスト、template_invoke_name の値は無視され、subject が必要です。 |
sender_ids | string[] | * | 送信者IDテスト、sender_id の値は無視されます。 |
send_times | string[] | * | 送信時間テスト、send_time の値は無視されます。 |
subjects | string[] | * | メール件名テスト、subject の値は無視されます。 |
例:
// 異なるメール件名のA/Bテスト
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"subjects": []
}
// 異なるメールテンプレートのA/Bテスト
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"template_invoke_names": []
}
// 異なる送信者のA/Bテスト
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"sender_ids": []
}
// 異なる送信者のA/Bテスト
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"send_times": []
}
注意:
ab_test
の設定は現在、単一のテスト項目のみをサポートしています。
パラメータ google_track
のフォーマット:
google_track
パラメータを設定すると、これらのパラメータがメール内のリンクに追加されます。これにより、タスクからウェブサイトへの顧客トラフィックを追跡し、Google Analyticsでウェブサイトを分析することができます。
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
google_track | object | false | Googleトラック設定パラメータ |
campaign_name | string | false | キャンペーン名 (最大64文字) |
campaign_source | string | false | ソース (最大64文字) |
campaign_medium | string | false | メディア (最大64文字) |
campaign_term | string | false | キーワード (最大64文字) |
campaign_content | string | false | コンテンツ (最大64文字) |
例:
"google_track": {
"campaign_name":"",
"campaign_source":"",
"campaign_medium":"",
"campaign_term":"",
"campaign_content":""
}
パラメータ warm_up
のフォーマット:
ウォームアップ送信を使用すると、特定の受信ドメインに対して1時間または1日あたりの送信量を設定し、配信率を向上させることができます。また、配信率のパフォーマンスに基づいて送信率を調整することができます。
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
warm_up | object[] | false | ウォームアップ送信設定パラメータ、最大長20 |
domain | string | true | 受信ドメイン |
rate | integer | true | 送信率レベル |
upgrade_value | float | true | レートアップグレードの配信率しきい値、値は (0,1] の小数 |
downgrade_value | float | true | レートダウングレードの配信率しきい値、値は (0,1] の小数 |
例:
"warm_up": [{
"domain": "gmail.com",
"rate": 1,
"upgrade_value": "0.95",
"downgrade_value": "0.75"
}, {
"domain": "hotmail.com",
"rate": 3,
"upgrade_value": "0.95",
"downgrade_value": "0.75"
}]
リクエスト例
通常タスク作成
curl -X POST -H 'Content-Type: application/json; charset=utf-8' -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' -i https://email.api.engagelab.cc/v1/marketing/campaigns --data '{
"campaign_type": 1,
"name": "11.11_leon_api8",
"to":[{
"type": "tag",
"value": ["tag1"]
}],
"sender_id": "53",
"reply_to": "",
"template_invoke_name": "leon2_shanshan",
"subject": "happy new year",
"run_time": "2022-10-26 17:10:20",
"time_zone":"8",
"attachments":[{
"content":"base64 content",
"file_name":"1.jpg"
},{
"content":"base64 content",
"file_name":"2.jpg"
}],
"warm_up": [{
"domain":"gmail.com",
"rate":1,
"upgrade_value":"0.95",
"downgrade_value":"0.75"
},{
"domain":"hotmail.com",
"rate":1,
"upgrade_value":"0.95",
"downgrade_value":"0.75"
}],
"google_track":{
"campaign_name":"",
"campaign_source":"",
"campaign_medium":"",
"campaign_term":"",
"campaign_content":""
}
}
'
ABタスク作成
curl -X POST -H 'Content-Type: application/json; charset=utf-8' -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' -i https://email.api.engagelab.cc/v1/marketing/campaigns --data '{
"campaign_type": 2,
"name": "11.11_leon_api9",
"to":[{
"type": "list",
"value": ["all"]
}],
"sender_id": "53",
"reply_to": "reply@sendcloud.im",
"template_invoke_name": "leon2_shanshan",
"subject": "happy new year",
"run_time": "2022-10-26T17:10:20+0800",
"time_zone":"8",
"attachments":[{
"content":"base64 content",
"file_name":"1.jpg"
}
],
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"template_invoke_names": []
},
"google_track":{
"campaign_name":"",
"campaign_source":"",
"campaign_medium":"",
"campaign_term":"",
"campaign_content":""
}
}'
レスポンス例
Response-Success
HttpStatus: 200
{
"result": {
"campaign_id": 34007,
"campaign_type": 2,
"name": "testddd",
"to": {
"type": "tag",
"value": ["tag1"]
},
"template_invoke_name": "leon2_shanshan",
"reply_to": "",
"status": 2,
"create_time": "2022-09-27T16:36:32+0800",
"update_time": "2022-10-12T00:00:00+0800",
"run_time": "2022-09-27T16:41:23+0800",
"complete_time": "2022-10-12T00:00:00+0800",
"time_zone": "+8",
"sender_id": 21,
"google_track": {
"campaign_name":"",
"campaign_source":"",
"campaign_medium":"",
"campaign_term":"",
"campaign_content":""
},
"warm_up": [{
"domain":"hotmail.com",
"rate":1,
"upgrade_value":"0.95",
"downgrade_value":"0.75"
},{
"domain":"hotmail.com",
"rate":1,
"upgrade_value":"0.95",
"downgrade_value":"0.75"
}],
}
}
A/Bテストタスクレスポンス例
{
"result": {
"campaign_id": 34009,
"campaign_type": 2,
"name": "testddd",
"to":[{
"type": "list",
"value": ["all"]
}],
"template_invoke_name": "leon2_shanshan",
"reply_to": "",
"status": 0,
"create_time": "2022-09-27T16:36:32+0800",
"update_time": "2022-10-12T00:00:00+0800",
"run_time": "2022-09-27T16:41:23+0800",
"complete_time": "2022-10-12T00:00:00+0800",
"time_zone": "+8",
"sender_id": 21,
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"template_invoke_names": []
},
"google_track": {
"campaign_name":"",
"campaign_source":"",
"campaign_medium":"",
"campaign_term":"",
"campaign_content":""
}
}
}
Response-Error
HttpStatus: 401
{
"code": 32112,
"message": "name cannot be empty"
}
タスク削除
URL
https://email.api.engagelab.cc/v1/marketing/campaigns/{campaign_id}
HTTPリクエストメソッド
DELETE
Content-Type
application/x-www-form-urlencoded;charset=utf-8
リクエストヘッダー
ヘッダー | タイプ | 必須 | 説明 |
---|---|---|---|
Authorization | string | true | Basic base64(api_user:api_key) |
リクエスト例
curl -X DELETE -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' -i https://email.api.engagelab.cc/v1/marketing/campaigns/8
レスポンス例
Response-Succes
HttpStatus: 200
{
"count": 1
}
Response-Error
HttpStatus: 401
{
"code": 30000,
"message": "Authentication failed"
}
タスク更新
URL
https://email.api.engagelab.cc/v1/marketing/campaigns/{campaign_id}
HTTPリクエストメソッド
PUT
Content-Type
application/json; charset=utf-8
リクエストヘッダー
ヘッダー | タイプ | 必須 | 説明 |
---|---|---|---|
Authorization | string | true | Bearer Token |
ボディパラメータ
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
campaign_type | integer | true | タスクタイプ 1: A/Bタスク, 2: 通常タスク |
name | string | true | タスク名 (最大64文字) |
to | object[] | true | 宛先、現在は配列長1をサポート |
reply_to | string | false | 返信先アドレス |
sender_id | string | * | 送信者ID (通常タスクのみサポート) |
template_invoke_name | string | * | メールテンプレート呼び出し名 (通常タスクのみサポート) |
subject | string | * | メール件名 (A/Bタスクに必須) |
send_time | string | * | 送信時間 (通常タスクのみサポート), 例: 2022-10-19 19:35:20 |
time_zone | integer | * | デフォルトは+8タイムゾーン |
attachments | object[] | false | メール添付ファイル (最大10個) |
filename | string | false | 添付ファイル名, 例: example.pdf |
content | text | false | 添付ファイルのBase64エンコードされた内容 |
ab_test | object | * | A/Bタスクの設定パラメータ (A/Bタスクのみサポート) |
google_track | object | false | google_track設定パラメータ |
warm_up | object[] | false | ウォームアップ送信設定パラメータ (通常タスクのみサポート) |
リクエスト例
curl -X PUT -H ' application/json; charset=utf-8' -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' -i https://email.api.engagelab.cc/v1/marketing/campaigns/8 --data '{
"name":"11.11_leon_api8"
}'
レスポンス例
Response-Success
HttpStatus: 200
{
"count": 1
}
Response-Error
{
"code": 32110,
"message": "The current campaign has been executed and cannot be modified"
}
タスクリスト
URL
https://email.api.engagelab.cc/v1/marketing/campaigns
HTTPリクエストメソッド
GET
Content-Type
application/x-www-form-urlencoded;charset=utf-8
リクエストヘッダー
ヘッダー | タイプ | 必須 | 説明 |
---|---|---|---|
Authorization | string | true | Basic base64(api_user:api_key) |
クエリパラメータ
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
campaign_type | integer | false | タスクタイプ 1. A/Bタスク 2. 通常タスク |
status | integer | false | タスクステータス (0. 保留中, 1. 送信中, 2. 完了, -1. 失敗) |
name | string | false | タスク名 |
limit | integer | false | クエリ数, 範囲 [1-100], デフォルトは10 |
offset | integer | false | クエリ開始位置, 範囲 [0-], デフォルトは0 |
リクエスト例
curl -X GET -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' -i https://email.api.engagelab.cc/v1/marketing/campaigns?&status=2
レスポンス例
Response-Success
HttpStatus:200
{
"result": [
{
"campaign_id": 34007,
"campaign_type": 1,
"name": "testddd",
"to":[{
"type": "list",
"value": ["all"]
}],
"template_invoke_name": "leon2_shanshan",
"reply_to": "",
"status": 2,
"google_track": null,
"create_time": "2022-09-27T16:36:32+0800",
"update_time": "2022-10-12T00:00:00+0800",
"run_time": "2022-09-27T16:41:23+0800",
"complete_time": "2022-10-12T00:00:00+0800",
"time_zone": "+8",
"warm_up": [],
"sender_id": 21,
"from_email": "xjmfc23@legendnovel.com",
"from_name": "aaaa",
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"template_invoke_names": []
}
}
],
"total": 2
}
Response-Error
{
"code": 30000,
"message": "Authentication failed"
}
タスク詳細
URL
https://email.api.engagelab.cc/v1/marketing/campaigns/{campaign_id}
HTTPリクエストメソッド
GET
Content-Type
application/x-www-form-urlencoded;charset=utf-8
リクエストヘッダー
ヘッダー | タイプ | 必須 | 説明 |
---|---|---|---|
Authorization | string | true | Basic base64(api_user:api_key) |
リクエスト例
curl -X GET -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' -i https://email.api.engagelab.cc/v1/marketing/campaigns/33761
レスポンス説明
パラメータ | タイプ | 説明 |
---|---|---|
name | string | タスク名 |
to | object[] | 宛先、現在は配列長1をサポート |
campaign_id | integer | タスクID |
campaign_type | integer | タスクタイプ 1 A/Bタスク 2 通常タスク |
template_invoke_name | string | テンプレート呼び出し名 |
reply_to | string | 返信先アドレス |
status | integer | タスクステータス (0. 保留中, 1. 送信中, 2. 完了, -1. 失敗) |
from_email | string | 送信者IDに対応するメールアドレス |
from_name | string | 送信者IDに対応するニックネーム |
sender_id | integer | 送信者ID |
create_time | string | 作成時間 (UTC+8) |
update_time | string | 更新時間 (UTC+8) |
run_time | string | 実行時間 (UTC+8) |
time_tone | integer | タイムゾーン (タイムゾーン辞書を参照) |
complete_time | string | 完了時間 (UTC+8) |
google_track | object | google_track設定パラメータ |
warm_up | array[object] | ウォームアップ送信設定パラメータ (通常タスクのみサポート) |
ab_test | object | A/Bテスト設定 |
レスポンス例
Response-Success
HttpStatus: 200
{
"result": {
"campaign_id": 34007,
"campaign_type": 1,
"name": "testddd",
"to":[{
"type": "list",
"value": ["all"]
}],
"from_email": "xjmfc23@legendnovel.com",
"from_name": "aaaa",
"template_invoke_name": "leon2_shanshan",
"reply_to": "",
"status": 2,
"google_track": null,
"create_time": "2022-09-27T16:36:32+0800",
"update_time": "2022-10-12T00:00:00+0800",
"run_time": "2022-09-27T16:41:23+0800",
"complete_time": "2022-10-12T00:00:00+0800",
"time_zone": "+8",
"warm_up": null,
"sender_id": 21,
"ab_test": {
"percent": 20,
"win_condition": {
"time_unit": "hour",
"after_time": 18,
"compare": "open_percent"
},
"template_invoke_names": []
}
}
}
Response-Error
{
"code": 30000,
"message": "Authentication failed"
}