Subversion Repositories cheapmusic

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
103 - 1
<?php
2
// If you are using Composer
3
require 'vendor/autoload.php';
4
 
5
 
6
$apiKey = getenv('SENDGRID_API_KEY');
7
$sg = new \SendGrid($apiKey);
8
 
9
////////////////////////////////////////////////////
10
// Create a Campaign #
11
// POST /campaigns #
12
 
13
$request_body = json_decode('{
14
  "categories": [
15
    "spring line"
16
  ],
17
  "custom_unsubscribe_url": "",
18
  "html_content": "<html><head><title></title></head><body><p>Check out our spring line!</p></body></html>",
19
  "ip_pool": "marketing",
20
  "list_ids": [
21
    110,
22
    124
23
  ],
24
  "plain_content": "Check out our spring line!",
25
  "segment_ids": [
26
    110
27
  ],
28
  "sender_id": 124451,
29
  "subject": "New Products for Spring!",
30
  "suppression_group_id": 42,
31
  "title": "March Newsletter"
32
}');
33
$response = $sg->client->campaigns()->post($request_body);
34
echo $response->statusCode();
35
echo $response->body();
36
echo $response->headers();
37
 
38
////////////////////////////////////////////////////
39
// Retrieve all Campaigns #
40
// GET /campaigns #
41
 
42
$query_params = json_decode('{"limit": 1, "offset": 1}');
43
$response = $sg->client->campaigns()->get(null, $query_params);
44
echo $response->statusCode();
45
echo $response->body();
46
echo $response->headers();
47
 
48
////////////////////////////////////////////////////
49
// Update a Campaign #
50
// PATCH /campaigns/{campaign_id} #
51
 
52
$request_body = json_decode('{
53
  "categories": [
54
    "summer line"
55
  ],
56
  "html_content": "<html><head><title></title></head><body><p>Check out our summer line!</p></body></html>",
57
  "plain_content": "Check out our summer line!",
58
  "subject": "New Products for Summer!",
59
  "title": "May Newsletter"
60
}');
61
$campaign_id = "test_url_param";
62
$response = $sg->client->campaigns()->_($campaign_id)->patch($request_body);
63
echo $response->statusCode();
64
echo $response->body();
65
echo $response->headers();
66
 
67
////////////////////////////////////////////////////
68
// Retrieve a single campaign #
69
// GET /campaigns/{campaign_id} #
70
 
71
$campaign_id = "test_url_param";
72
$response = $sg->client->campaigns()->_($campaign_id)->get();
73
echo $response->statusCode();
74
echo $response->body();
75
echo $response->headers();
76
 
77
////////////////////////////////////////////////////
78
// Delete a Campaign #
79
// DELETE /campaigns/{campaign_id} #
80
 
81
$campaign_id = "test_url_param";
82
$response = $sg->client->campaigns()->_($campaign_id)->delete();
83
echo $response->statusCode();
84
echo $response->body();
85
echo $response->headers();
86
 
87
////////////////////////////////////////////////////
88
// Update a Scheduled Campaign #
89
// PATCH /campaigns/{campaign_id}/schedules #
90
 
91
$request_body = json_decode('{
92
  "send_at": 1489451436
93
}');
94
$campaign_id = "test_url_param";
95
$response = $sg->client->campaigns()->_($campaign_id)->schedules()->patch($request_body);
96
echo $response->statusCode();
97
echo $response->body();
98
echo $response->headers();
99
 
100
////////////////////////////////////////////////////
101
// Schedule a Campaign #
102
// POST /campaigns/{campaign_id}/schedules #
103
 
104
$request_body = json_decode('{
105
  "send_at": 1489771528
106
}');
107
$campaign_id = "test_url_param";
108
$response = $sg->client->campaigns()->_($campaign_id)->schedules()->post($request_body);
109
echo $response->statusCode();
110
echo $response->body();
111
echo $response->headers();
112
 
113
////////////////////////////////////////////////////
114
// View Scheduled Time of a Campaign #
115
// GET /campaigns/{campaign_id}/schedules #
116
 
117
$campaign_id = "test_url_param";
118
$response = $sg->client->campaigns()->_($campaign_id)->schedules()->get();
119
echo $response->statusCode();
120
echo $response->body();
121
echo $response->headers();
122
 
123
////////////////////////////////////////////////////
124
// Unschedule a Scheduled Campaign #
125
// DELETE /campaigns/{campaign_id}/schedules #
126
 
127
$campaign_id = "test_url_param";
128
$response = $sg->client->campaigns()->_($campaign_id)->schedules()->delete();
129
echo $response->statusCode();
130
echo $response->body();
131
echo $response->headers();
132
 
133
////////////////////////////////////////////////////
134
// Send a Campaign #
135
// POST /campaigns/{campaign_id}/schedules/now #
136
 
137
$campaign_id = "test_url_param";
138
$response = $sg->client->campaigns()->_($campaign_id)->schedules()->now()->post();
139
echo $response->statusCode();
140
echo $response->body();
141
echo $response->headers();
142
 
143
////////////////////////////////////////////////////
144
// Send a Test Campaign #
145
// POST /campaigns/{campaign_id}/schedules/test #
146
 
147
$request_body = json_decode('{
148
  "to": "your.email@example.com"
149
}');
150
$campaign_id = "test_url_param";
151
$response = $sg->client->campaigns()->_($campaign_id)->schedules()->test()->post($request_body);
152
echo $response->statusCode();
153
echo $response->body();
154
echo $response->headers();