# Statistics
# Statistics of delivery data (per day)
Email data counted by day
 URL
https://api2.sendcloud.net/api/statday/list
1
HTTP Request Method
post    get
1
Parameter Description
| parameter | type | required or not | description | 
|---|---|---|---|
| apiUser | string | yes | API_USER | 
| apiKey | string | yes | API_KEY | 
| days | int | * | stats in the past [days] days ( days=1means today) | 
| startDate | string | * | start date, formatted with yyyy-MM-dd | 
| endDate | string | * | end date, formatted with yyyy-MM-dd | 
| apiUserList | string | no | obtain stats of specified API_USER; multiple API_USERs are separated by semicolons, for example, apiUserList=a;b;c | 
| labelIdList | string | no | obtain stats of specified label; multiple labels are separated by semicolons, for example, labelIdList=a;b;c | 
| labelNameList | string | no | obtain stats of specified label name; multiple labels are separated by semicolons(the Chinese character is encoded in UTF-8), for example, labelNameList=a;b;c | 
| domainList | string | no | obtain stats in specified domian; multiple domains are separated by semicolons, for example, domainList=a;b;c | 
| aggregate | boolean(1, 0) | no | defaults to 0; if aggregate=1, aggregated data will be returned | 
Tips:
- pecified time span is required when obtaining stats. Note: start_date and end_date, or [days] is required.
- Time span cannot be longer than 3 months.
- Whenaggregate=1, all data will be aggregated.
- When labelIdList and labelNameList are provided at the same time, the labelIdList is preferred for precise query; When only labelNameList is provided, fuzzy query is performed with all labelNames in the list
Request Example:
http://api2.sendcloud.net/api/statday/list?apiUser=***&apiKey=***&days=2&domainList=***;***
http://api2.sendcloud.net/api/statday/list?apiUser=***&apiKey=***&startDate=2015-02-01&endDate=2015-02-28&apiUserList=***;***
http://api2.sendcloud.net/api/statday/list?apiUser=***&apiKey=***&startDate=2015-02-01&endDate=2015-02-28&apiUserList=***;***&aggregate=1
1
2
3
4
5
2
3
4
5
Returned value description
| parameter | description | 
|---|---|
| sendDate | send date | 
| apiUser | API_USER | 
| domain | domain | 
| labelId | label ID | 
| labelName | label name | 
| requestNum | total requests | 
| deliveredNum | deliveries | 
| clickNum | clicks | 
| openNum | opens | 
| bounceNum | bounces | 
| spamReportedNum | number of spam reporting | 
| unsubscribeNum | unsubscribes | 
| uniqueOpensNum | unique opens | 
| uniqueClicksNum | unique clicks | 
| invalidEmailsNum | number of invalid emails | 
| deliveredPercent | percentage of deliveries | 
| clickPercent | percentage of clicks | 
| openPercent | percentage of opens | 
| bouncePercent | percentage of bounces | 
| spamReportedPercent | percentage of spam reporting | 
| unsubscribePercent | percentage of unsubscribes | 
| uniqueOpensPercent | percentage of unique opens | 
| uniqueClicksPercent | percentage of unique clicks | 
| invalidEmailsPercent | percentage of invalid emails | 
| openRatePercent | Reading conversion ratio | 
Returned value example:
{
    "statusCode":200,
    "info": {
       "dataList": [
         {
            "sendDate": "2015-03-12",
            "apiUser": "...",
            "domain": "ifaxin.com",
            "labelId": 0,
            "labelName": null,
            "requestNum": 20,
            "deliveredNum": 0,
            "clickNum": 0,
            "openNum": 0,
            "bounceNum": 0,
            "spamReportedNum": 0,
            "unsubscribeNum": 0,
            "uniqueOpensNum": 0,
            "uniqueClicksNum": 0,
            "invalidEmailsNum": 20,
            "deliveredPercent": 0,
            "clickPercent": 0,
            "openPercent": 0,
            "bouncePercent": 0,
            "spamReportedPercent": 0,
            "unsubscribePercent": 0,
            "uniqueOpensPercent": 0,
            "uniqueClicksPercent": 0,
            "invalidEmailsPercent": 100
            "openRatePercent": 0.0
          },
          {
            "sendDate": "2015-03-12",
            "apiUser": "...",
            "domain": "qq.com",
            "labelId": 0,
            "labelName": null,
            "requestNum": 27,
            "deliveredNum": 27,
            "clickNum": 0,
            "openNum": 0,
            "bounceNum": 0,
            "spamReportedNum": 0,
            "unsubscribeNum": 0,
            "uniqueOpensNum": 0,
            "uniqueClicksNum": 0,
            "invalidEmailsNum": 0,
            "deliveredPercent": 100,
            "clickPercent": 0,
            "openPercent": 0,
            "bouncePercent": 0,
            "spamReportedPercent": 0,
            "unsubscribePercent": 0,
            "uniqueOpensPercent": 0,
            "uniqueClicksPercent": 0,
            "invalidEmailsPercent": 0
            "openRatePercent": 0.0
          }
      ]
    },
    "message": "request was successful",
    "result": true
}
#aggregate = 1
{
    "statusCode":200,
    "info": {
      "dataList": {
        "requestNum": 48,
        "deliveredNum": 28,
        "clickNum": 0,
        "openNum": 0,
        "bounceNum": 0,
        "spamReportedNum": 0,
        "unsubscribeNum": 0,
        "uniqueOpenNum": 0,
        "uniqueClickNum": 0,
        "invalidEmailNum": 20,
        "deliveredPercent": 58.33,
        "clickPercent": 0,
        "openPercent": 0,
        "bouncePercent": 0,
        "spamReportedPercent": 0,
        "unsubscribePercent": 0,
        "uniqueOpensPercent": 0,
        "uniqueClicksPercent": 0,
        "invalidEmailsPercent": 41.66   
      },
    "message": "request was successful",
    "result": true
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# Statistics of delivery data (per hour)
Email data counted by hour
URL
https://api2.sendcloud.net/api/stathour/list
1
HTTP Request Method
post    get
1
Parameter Description
| parameter | type | required or not | description | 
|---|---|---|---|
| apiUser | string | yes | API_USER | 
| apiKey | string | yes | API_KEY | 
| days | int | * | stats in the past [days] days ( days=1means today) | 
| startDate | string | * | start date, formatted with yyyy-MM-dd | 
| endDate | string | * | end date, formatted with yyyy-MM-dd | 
| apiUserList | string | no | obtain stats of specified API_USER; multiple API_USERs are separated by semicolons, for example, apiUserList=a;b;c | 
| labelIdList | string | no | obtain stats in specified label; multiple labels are separated by semicolons, for example, labelIdList=a;b;c | 
| labelNameList | string | no | obtain stats of specified label name; multiple labels are separated by semicolons(the Chinese character is encoded in UTF-8), for example, labelNameList=a;b;c | 
Tips::
- Specified time span is required when obtaining stats. Note:start_date and end_date or days is required.
- Time span cannot be longer than 3 months.
- When labelIdList and labelNameList are provided at the same time, the labelIdList is preferred for precise query; When only labelNameList is provided, fuzzy query is performed with all labelNames in the list
Request Example:
http://api2.sendcloud.net/api/stathour/list?apiUser=***&apiKey=***&days=2
http://api2.sendcloud.net/api/stathour/list?apiUser=***&apiKey=***&startDate=2015-02-01&endDate=2015-02-28&apiUserList=***;***
1
2
3
2
3
Returned value description
| parameter | description | 
|---|---|
| sendDate | send date | 
| apiUser | API_USER | 
| labelId | label ID | 
| labelName | label name | 
| sendHour | an hour, within [0 – 23] | 
| requestNum | total requests | 
| deliveredNum | deliveries | 
| clickNum | clicks | 
| openNum | opens | 
| bounceNum | bounces | 
| spamReportedNum | number of spam reporting | 
| unsubscribeNum | unsubscribes | 
| uniqueOpensNum | unique opens | 
| uniqueClicksNum | unique clicks | 
| invalidEmailsNum | number of invalid emails | 
| deliveredPercent | percentage of deliveries | 
| clickPercent | percentage of clicks | 
| openPercent | percentage of opens | 
| bouncePercent | percentage of bounces | 
| spamReportedPercent | percentage of spam reporting | 
| unsubscribePercent | percentage of unsubscribes | 
| uniqueOpensPercent | percentage of unique opens | 
| uniqueClicksPercent | percentage of unique clicks | 
| invalidEmailsPercent | percentage of invalid emails | 
| openRatePercent | Reading conversion ratio | 
Returned value example:
{
    "statusCode":200,
    "info":{
      "dataList": [
           {
            "sendDate": "2015-03-12",
            "apiUser": "...",
            "labelId": 0,
            "labelName":"",
            "sendHour": 10,
            "requestNum": 8,
            "deliveredNum": 3,
            "clickNum": 0,
            "openNum": 0,
            "bounceNum": 0,
            "spamReportedNum": 0,
            "unsubscribeNum": 0,
            "uniqueOpensNum": 0,
            "uniqueClicksNum": 0,
            "invalidEmailsNum": 5,
            "deliveredPercent": 75,
            "clickPercent": 0,
            "openPercent": 0,
            "bouncePercent": 0,
            "spamReportedPercent": 0,
            "unsubscribePercent": 0,
            "uniqueOpensPercent": 0,
            "uniqueClickspercent": 0,
            "invalidEmailsPercent": 62.5
            "openRatePercent": 0.0
           }
       ],
    "message": "request was successful",
    "result": true
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Statistics of invalid emails
Query classified stats of invalid emails
URL
https://api2.sendcloud.net/api/invalidstat/list
1
HTTP Request Method
post    get
1
Parameter Description
| parameter | type | required or not | description | 
|---|---|---|---|
| apiUser | string | yes | API_USER | 
| apiKey | string | yes | API_KEY | 
| days | int | * | stats in the past [days] days ( days=1means today) | 
| startDate | string | * | start date, formatted with yyyy-MM-dd | 
| endDate | string | * | end date, formatted with yyyy-MM-dd | 
| apiUserList | string | no | obtain stats of specified API_USER, mutiple API_USERs are separated by semicolons, for example, apiUserList=a;b;c | 
| labelIdList | string | no | obtain stats of specified label; multiple labels are separated by semicolons, for example, labelIdList=a;b;c | 
| labelNameList | string | no | obtain stats of specified label name; multiple labels are separated by semicolons(the Chinese character is encoded in UTF-8), for example, labelNameList=a;b;c | 
| domainList | string | no | obtain stats in specified domian; multiple domains are separated by semicolons, for example, domainList=a;b;c | 
| aggregate | int(1, 0) | no | defaults to 0; if aggregate=1, aggregated data will be returned | 
Tips:
- Specified time span is required when obtaining stats. Note: startDate and endDate or days is required.
- Whenaggregate=1,all data will be aggregated.
- When labelIdList and labelNameList are provided at the same time, the labelIdList is preferred for precise query; When only labelNameList is provided, fuzzy query is performed with all labelNames in the list
Request Example:
https://api2.sendcloud.net/api/invalidstat/list?apiUser=***&apiKey=***&startDate=2015-03-12&endDate=2015-03-12
1
Returned value description
| parameter | description | 
|---|---|
| sendDate | send date, formatted with yyyy-MM-dd | 
| apiUser | API_USER | 
| labelId | label ID | 
| labelName | label name | 
| domain | domain | 
| sendcloudBlacklist | count of emails in SendCloud blacklist | 
| ubsubscribe | count of emails in unsubscribe list | 
| espUnvaliable | unavailable esp severs | 
| recipientAddressError | invalid recipient addresses | 
| ipOrDomainRejected | rejected IPs or domains | 
| recipientNotFound | nonexistent recipients | 
| spamEmail | count of spam emails | 
| senderOrRecipientRejected | rejected senders or recipients | 
| others | others | 
Returned value example
{
  "statusCode":200,
  "info":{
    "dataList":[
       {
        "sendDate":"2016-02-01",
        "apiUser":"postmaster@delong.sendcloud.org",
        "labelId":5285,
        "labelName":"test", 
        "domain":"gmail.com",
        "sendcloudBlacklist":1,
        "ubsubscribe":0,
        "espUnvaliable":0,
        "recipientAddressError":0,
        "recipientNotFound":0,
        "spamEmail":0,
        "senderOrRecipientRejected":0,
        "others":0
       }
   ]
  },
  "message": "request was successful",
  "result": true
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
