Приглашение людей с Trello API

Я пытаюсь пригласить человека по электронной почте в Trello с моего сайта. Здесь Справочник по API. Когда я пытаюсь пригласить его, простой ответ — «неверный ключ». Вот моя функция:

public function inviteEmployeeToTrello ($email, $name, $isAdmin)
{
$organazationTrelloID = 'myOrganazationID';
$trelloAuthToken = 'myTrelloAuthToken';
$trelloInviteUrl = 'https://trello.com/1/organizations/'.$organazationTrelloID.'/members';

if ($isAdmin == 1)
{
$type = 'admin';
}
else
{
$type = 'normal';
}

$fields = array(
'fullName' => $name,
'email' => $email,
'type' => $type,
'token' => $trelloAuthToken
);

// open connection
$ch = curl_init();

// set the url, number of PUT vars, PUT data
curl_setopt($ch, CURLOPT_URL, $trelloInviteUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));

// exec
$replyRaw = curl_exec($ch);
$reply = json_decode($replyRaw, true);

// close connection
curl_close($ch);

dd($ch);
}

0

Решение

CURLOPT_POSTFIELDS не хочет JSON,
если вы хотите запрос с кодировкой urlencoded, используйте http_build_query ($ fields) или если вы хотите запрос multipart / form-data, просто передайте ему массив $ fields напрямую. (Документация API, похоже, не упоминает, какие типы запросов он принимает, хотя urlencoded является наиболее распространенным.)

1

Другие решения

Как говорит код ошибки, вы забыли передать ключ приложения. Вот пример из Справочник по API :

https://api.trello.com/1/organizations/publicorg?members=all&member_fields = имя пользователя, FULLNAME&поля = имя, по убыванию&ключ = [application_key]&маркер = [optional_auth_token]

Вы должны включить его в свой запрос, следовательно, в вашем случае, добавить его в
$fields массив:

$fields = array(
'fullName' => $name,
'email' => $email,
'type' => $type,,
'key' => $trelloAppKey
'token' => $trelloAuthToken
);
1

По вопросам рекламы [email protected]