PluginProbe ʕ •ᴥ•ʔ
Brevo – Email, SMS, Web Push, Chat, and more. / 3.2.0
Brevo – Email, SMS, Web Push, Chat, and more. v3.2.0
2.9.13 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 2.9.9 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.2 3.1.20 3.1.21 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.1.29 3.1.3 3.1.30 3.1.31 3.1.32 3.1.33 3.1.34 3.1.35 3.1.36 3.1.37 3.1.38 3.1.39 3.1.4 3.1.40 3.1.41 3.1.42 3.1.43 3.1.44 3.1.45 3.1.46 3.1.47 3.1.48 3.1.49 3.1.5 3.1.50 3.1.51 3.1.52 3.1.53 3.1.54 3.1.55 3.1.56 3.1.57 3.1.58 3.1.59 3.1.6 3.1.60 3.1.61 3.1.62 3.1.63 3.1.64 3.1.65 3.1.66 3.1.67 3.1.68 3.1.69 3.1.7 3.1.70 3.1.71 3.1.72 3.1.73 3.1.74 3.1.75 3.1.76 3.1.77 3.1.78 3.1.79 3.1.8 3.1.80 3.1.81 3.1.82 3.1.83 3.1.84 3.1.85 3.1.86 3.1.87 3.1.88 3.1.89 3.1.9 3.1.90 3.1.91 3.1.92 3.1.93 3.1.94 3.1.95 3.1.96 3.1.97 3.1.98 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 trunk 1.0 1.5 2.0.8 2.9.10 2.9.11 2.9.12
mailin / wonderpush-php-lib / lib / Api / Rest.php
mailin / wonderpush-php-lib / lib / Api Last commit date
Applications.php 1 year ago Campaigns.php 1 year ago Deliveries.php 1 year ago Events.php 1 year ago Installations.php 1 year ago Rest.php 1 year ago Segments.php 1 year ago Stats.php 1 year ago
Rest.php
157 lines
1 <?php
2
3 namespace WonderPush\Api;
4
5 if (count(get_included_files()) === 1) { http_response_code(403); exit(); } // Prevent direct access
6
7 /**
8 * Permits placing arbitrary calls against the WonderPush Management API.
9 *
10 * You should probably use helper classes and methods instead of using this directly.
11 */
12 class Rest {
13
14 /**
15 * Instance of the library whose credentials are to be used.
16 * @var \WonderPush\WonderPush
17 */
18 private $wp;
19
20 public function __construct(\WonderPush\WonderPush $wp) {
21 $this->wp = $wp;
22 }
23
24 /**
25 * Constructs a request.
26 * @param string $method
27 * @param string $path
28 * @param array $params
29 * @return \WonderPush\Net\Request
30 */
31 public function request($method, $path, $params = array()) {
32 $rtn = new \WonderPush\Net\Request();
33 $rtn->setMethod($method);
34 $rtn->setRoot($this->wp->getApiRoot());
35 if (!\WonderPush\Util\StringUtil::beginsWith($path, '/')) {
36 $path = '/' . $path;
37 }
38 $rtn->setPath($path);
39 $rtn->setParams($params);
40 $rtn->setQsParam('applicationId', $this->wp->getApplicationId()); // filtered if null
41 if ($this->wp->getCredentials()) {
42 $this->wp->getCredentials()->authenticate($rtn);
43 }
44 return $rtn;
45 }
46
47 /**
48 * Performs a GET call.
49 * @param string $path
50 * @param array $params
51 * @return \WonderPush\Net\Response
52 */
53 public function get($path, $params = array()) {
54 return $this->execute($this->requestForGet($path, $params));
55 }
56
57 /**
58 * Constructs a GET request.
59 * @param string $path
60 * @param array $params
61 * @return \WonderPush\Net\Request
62 */
63 public function requestForGet($path, $params = array()) {
64 return $this->request(\WonderPush\Net\Request::GET, $path, $params);
65 }
66
67 /**
68 * Performs a POST call.
69 * @param string $path
70 * @param array $params
71 * @return \WonderPush\Net\Response
72 */
73 public function post($path, $params = array()) {
74 return $this->execute($this->requestForPost($path, $params));
75 }
76
77 /**
78 * Constructs a POST request.
79 * @param string $path
80 * @param array $params
81 * @return \WonderPush\Net\Request
82 */
83 public function requestForPost($path, $params = array()) {
84 return $this->request(\WonderPush\Net\Request::POST, $path, $params);
85 }
86
87 /**
88 * Performs a PUT call.
89 * @param string $path
90 * @param array $params
91 * @return \WonderPush\Net\Response
92 */
93 public function put($path, $params = array()) {
94 return $this->execute($this->requestForPut($path, $params));
95 }
96
97 /**
98 * Constructs a PUT request.
99 * @param string $path
100 * @param array $params
101 * @return \WonderPush\Net\Request
102 */
103 public function requestForPut($path, $params = array()) {
104 return $this->request(\WonderPush\Net\Request::PUT, $path, $params);
105 }
106
107 /**
108 * Performs a PATCH call.
109 * @param string $path
110 * @param array $params
111 * @return \WonderPush\Net\Response
112 */
113 public function patch($path, $params = array()) {
114 return $this->execute($this->requestForPatch($path, $params));
115 }
116
117 /**
118 * Constructs a PATCH request.
119 * @param string $path
120 * @param array $params
121 * @return \WonderPush\Net\Request
122 */
123 public function requestForPatch($path, $params = array()) {
124 return $this->request(\WonderPush\Net\Request::PATCH, $path, $params);
125 }
126
127 /**
128 * Performs a DELETE call.
129 * @param string $path
130 * @param array $params
131 * @return \WonderPush\Net\Response
132 */
133 public function delete($path, $params = array()) {
134 return $this->execute($this->requestForDelete($path, $params));
135 }
136
137 /**
138 * Constructs a DELETE request.
139 * @param string $path
140 * @param array $params
141 * @return \WonderPush\Net\Request
142 */
143 public function requestForDelete($path, $params = array()) {
144 return $this->request(\WonderPush\Net\Request::DELETE, $path, $params);
145 }
146
147 /**
148 * Executes a request and returns its response.
149 * @param \WonderPush\Net\Request $request
150 * @return \WonderPush\Net\Response
151 */
152 public function execute(\WonderPush\Net\Request $request) {
153 return $this->wp->getHttpClient()->execute($request);
154 }
155
156 }
157