-
Notifications
You must be signed in to change notification settings - Fork 0
/
Contact.class.php
127 lines (108 loc) · 3.79 KB
/
Contact.class.php
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?php
class AC_Contact extends ActiveCampaign {
public $version;
public $url_base;
public $url;
public $api_key;
function __construct($version, $url_base, $url, $api_key) {
$this->version = $version;
$this->url_base = $url_base;
$this->url = $url;
$this->api_key = $api_key;
}
function add($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_add&api_output={$this->output}";
if ($params) $request_url .= "&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function automation_list($params) {
$request_url = "{$this->url}&api_action=contact_automation_list&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
return $response;
}
function delete_list($params) {
$request_url = "{$this->url}&api_action=contact_delete_list&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
return $response;
}
function delete($params) {
$request_url = "{$this->url}&api_action=contact_delete&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
return $response;
}
function edit($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_edit&api_output={$this->output}&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function list_($params) {
if ($this->version == 1) {
$request_url = "{$this->url}&api_action=contact_list&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
} elseif ($this->version == 2) {
$request_url = "{$this->url_base}/contact/emails";
// $params example: offset=0&limit=1000&listid=4
$response = $this->curl($request_url, $params, "GET", "contact_list");
}
return $response;
}
function note_add($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_note_add&api_output={$this->output}&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function note_edit($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_note_edit&api_output={$this->output}&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function note_delete($params) {
$request_url = "{$this->url}&api_action=contact_note_delete&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
return $response;
}
function paginator($params) {
$request_url = "{$this->url}&api_action=contact_paginator&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
return $response;
}
function sync($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_sync&api_output={$this->output}";
if ($params) $request_url .= "&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function tag_add($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_tag_add&api_output={$this->output}";
if ($params) $request_url .= "&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function tag_remove($params, $post_data) {
$request_url = "{$this->url}&api_action=contact_tag_remove&api_output={$this->output}";
if ($params) $request_url .= "&{$params}";
$response = $this->curl($request_url, $post_data);
return $response;
}
function view($params) {
// can be a contact ID, email, or hash
if (preg_match("/^email=/", $params)) {
$action = "contact_view_email";
}
elseif (preg_match("/^hash=/", $params)) {
$action = "contact_view_hash";
}
elseif (preg_match("/^id=/", $params)) {
$action = "contact_view";
}
else {
// default
$action = "contact_view";
}
$request_url = "{$this->url}&api_action={$action}&api_output={$this->output}&{$params}";
$response = $this->curl($request_url);
return $response;
}
}
?>