Api за емейли?

C++ JAVA
Post Reply
novakabg
Турист
Турист
Posts: 337
Joined: Fri May 13, 2016 12:29 pm
Contact:

Api за емейли?

Post by novakabg » Thu Nov 01, 2018 8:32 pm

Здравейте, имам една фирма с която работя и тя има нещо като mailchimp и имат собствено Api за качване на поръчки и емейли, как да процедирам да напиша клиент който да качва чрез тяхното Api?

Благодаря предварително за съвета и ако може някой код насока за php.

joTunkiq
Потребител
Потребител
Posts: 826
Joined: Tue Dec 25, 2012 10:03 am
Answers: 142
Contact:

Post by joTunkiq » Fri Nov 02, 2018 9:01 am

Имам една кола ейтука, май нещо и има, как дая оправя ? Точно това питаш. :idea:

Съответно знаеш какъв отговор ще получиш. Покажи примерен ендпоинт, какво значи качване - какъв файл, максимален размер, формат, Трябва ли ти акаунт, сертификати или нещо други за конекция, може ли да качваш по няколко файла и т.н. Дай примери иначе как за някой да те посъветва. :idea:

П.с. Не се заяждам, ама просто не е яко и хората дори не се опитват вече да отговарят хаха ;д Иначе задал си с 1 дума въпрос, ето ти 1 дума за отговор PHP Curl. (добре айде две са :!: ) :idea: :?:

п.с.2 - защо не им кажеш да ти направят такъв клиент, те най-вероятно имат, щом те са си го правили ? :shock: :idea: :?:

novakabg
Турист
Турист
Posts: 337
Joined: Fri May 13, 2016 12:29 pm
Contact:

Post by novakabg » Fri Nov 02, 2018 9:19 am

Искаш ли да дойда да те пребия :D

Кажи дали това е окей:

Code: Select all

$user = 'novaka@web-tourist.com';
$password = 'password';
$first_name = 'Novaka';
$email = 'novakalogin@web-tourist.com';
$customFieldId = '1';
$customFieldValue = 'test add contact';

$create_contact_url = 'https://mailchimp.com/api/contact';
$contact = new stdClass();
$contact->firstName = $first_name;
$contact->channels = array(array('type'=>'email', 'value' => $email));
$contact->fields = array(array('id'=> $customFieldId, 'value' => $customFieldValue));
$contact->groups = array(array('name'=>'Group1'));

send_request($create_contact_url, $contact, $user, $password);

function send_request($url, $json_value, $user, $password) {
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($json_value));
	curl_setopt($ch, CURLOPT_HEADER, 1);
	curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json', 'Content-Type: application/json'));
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_USERPWD, $user.':'.$password);
	curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($ch, CURLOPT_SSLVERSION, 6);
	$output = curl_exec($ch);
	curl_close($ch);
	echo($output);
}

joTunkiq
Потребител
Потребител
Posts: 826
Joined: Tue Dec 25, 2012 10:03 am
Answers: 142
Contact:

Post by joTunkiq » Fri Nov 02, 2018 9:44 am

Хаха заповядайй :D Ами окей е кода, стига да да ти върши работа хах :D

Виж тука има метод с json да пращаш.
[php]$data = [
'email' => 'johndoe@example.com',
'status' => 'subscribed',
'firstname' => 'john',
'lastname' => 'doe'
];

syncMailchimp($data);

function syncMailchimp($data) {
$apiKey = 'your api key';
$listId = 'your list id';

$memberId = md5(strtolower($data['email']));
$dataCenter = substr($apiKey,strpos($apiKey,'-')+1);
$url = 'https://' . $dataCenter . '.api.mailchimp.com/3.0/lists/' . $listId . '/members/' . $memberId;

$json = json_encode([
'email_address' => $data['email'],
'status' => $data['status'], // "subscribed","unsubscribed","cleaned","pending"
'merge_fields' => [
'FNAME' => $data['firstname'],
'LNAME' => $data['lastname']
]
]);

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $apiKey);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);

$result = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

return $httpCode;
}[/php] :idea:



Виж тази тема най-долу: https://stackoverflow.com/questions/304 ... mps-api-v3

И така, като ти омръзне да се занимаваш да правиш ръчно сам всичко може да погледнеш тука:

https://developer.mailchimp.com/documen ... imp-api-3/

ии

https://thedebuggers.com/send-mailchimp ... r-via-php/

П.с. web-tourist.com -> .net :D :?:

User avatar
xlebabarov
Нов
Нов
Posts: 184
Joined: Tue Nov 10, 2009 6:24 am

Post by xlebabarov » Fri Nov 02, 2018 4:09 pm

OFF TOPIC:
Без бой моля :lol:
Гошо пича ;) Понякога питам въпросчета с повишена трудност, но какво да се прави :)

joTunkiq
Потребител
Потребител
Posts: 826
Joined: Tue Dec 25, 2012 10:03 am
Answers: 142
Contact:

Post by joTunkiq » Fri Nov 02, 2018 4:17 pm

OFF TOPIC: Ние се шегуваме, спокойно :)

Post Reply