smartstrategy/linkedin-php

PHP library for LinkedIn

dev-master 2020-08-26 22:14 UTC

This package is auto-updated.

Last update: 2024-10-29 06:12:00 UTC


README

PHP client for LinkedIn API V2.

Requirements

  • php >= 7.0

Installation

composer require smart/linkedin-php:"dev-master"

Using LinkedIn API

To work with LinkedIn API have to init Client classes.

$client = new Client('appId', 'appSecret', 'returnUrl');

Authentication

$client = new Client('appId', 'appSecret', 'returnUrl');
if (array_key_exists('code', $_GET)) {
    $client->initToken($_GET['code']);
    
    $me = new Me($client);
} else {
    $authUrl = $client->getAuthenticationUrl([
        'scope' => [Client::PERMISSION_LITE_PROFILE]
    ]);
    header('Location: '.$authUrl);
    exit;
}

Share

There is possibility to publish a new post or share a post on LinkedIn activities

To share a post:

$client = new Client('appId', 'appSecret', 'returnUrl');
if (array_key_exists('code', $_GET)) {
    $client->initToken($_GET['code']);
    
    $shares = new Shares();
    $shares->setResharedShare('urn:li:share:1232132') // Post's urn:id
    
    $shares->setOwner('urn:li:person:c7RFYxyz78')
    
    $shareText = new ShareText();
    $shareText->setTitle('my title');
    
    $shares->setText($shareText);
    
    $shareEndpoint = new SMarT\LinkedIn\Endpoint\Share($client);
    $shareEndpoint->postShares($shares);
} else {
    $authUrl = $client->getAuthenticationUrl([
        'scope' => [Client::PERMISSION_LITE_PROFILE, Client::PERMISSION_W_MEMBER_SOCIAL]
    ]);
    header('Location: '.$authUrl);
    exit;
}

Before to perform this operation, the user declared in setOwner must be authenticated in LinkedIn's application.