Linkedin Api Visibillity - PullRequest
       9

Linkedin Api Visibillity

0 голосов
/ 30 марта 2020

Я провел некоторое время, не касаясь этого API, и теперь я получил следующую ошибку:

Unpermitted fields present in REQUEST_BODY:

Это код обмена:

$link = 'https://example.com.br';
$access_token = $access_token;
$linkedin_id = $linkedin_profile_id;
$body = new \stdClass();
$body->content = new \stdClass();
$body->content->contentEntities[0] = new \stdClass();
$body->text = new \stdClass();
$body->content->contentEntities[0]->thumbnails[0] = new \stdClass();
$body->content->contentEntities[0]->entityLocation = $link;
$body->content->contentEntities[0]->thumbnails[0]->resolvedUrl = "https://example.com.br/img/logo-header-120x50.png";
$body->content->title = 'Example';
$body->owner = 'urn:li:person:'.$linkedin_id;
$body->text->text = 'Kasum';
$body->visibility = new \stdClass();
$body->visibility->code = new \stdClass();
$body->visibility->code = 'anyone';//<-------------that is a line error
$body_json = json_encode($body, true);

try {
    $client = new Client(['base_uri' => 'https://api.linkedin.com']);
    $response = $client->request('POST', '/v2/shares', [
        'headers' => [
            "Authorization" => "Bearer " . $access_token,
            "Content-Type"  => "application/json",
            "x-li-format"   => "json"
        ],
        'body' => $body_json,
    ]);

    if ($response->getStatusCode() !== 201) {
        echo 'Error: '. $response->getLastBody()->errors[0]->message;
    }

    echo 'Post is shared on LinkedIn successfully';
} catch(Exception $e) {
    echo $e->getMessage(). ' for link '. $link;
}

Как указано в коде, поле видимости вызывает эту ошибку

Без него происходит совместное использование, но с видимостью только для соединений. Таким образом, сообщение теряет кнопку «Поделиться».

Больше не разрешено настраивать это поле или я делаю это неправильно?

...