Skip to content

dansup/pixelfed-php

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
wip
Oct 21, 2019
wip
Jan 31, 2020
src
Feb 11, 2020
wip
Oct 21, 2019
wip
Oct 21, 2019
wip
Oct 21, 2019
Oct 21, 2019
wip
Oct 21, 2019
wip
Oct 21, 2019
wip
Oct 21, 2019
wip
Oct 21, 2019
wip
Oct 21, 2019
Feb 22, 2020
wip
Jan 31, 2020
wip
Oct 21, 2019

Pixelfed PHP Library

PHP Library for Pixelfed

Installation

Install with Composer

composer require dansup/pixelfed-php

Authentication

You need a token from a Pixelfed instance. Navigate to /settings/applications on the Pixelfed instance and generate a new Personal Access Tokens. Use that token for authentication.

Examples

Nodeinfo

php -f examples/nodeinfo.php

Methods

user()

Returns current user.

GET /api/v1/accounts/verify_credentials

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->user();

accountById($id)

Fetch account by user id.

GET /api/v1/accounts/{$id}

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountById($id);

accountFollowersById($id)

Fetch account followers by user id.

GET /api/v1/accounts/{$id}/followers

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountFollowersById($id);

accountFollowingById($id)

Fetch account following by user id.

GET /api/v1/accounts/{$id}/following

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountFollowingById($id);

accountStatusesById($id)

Fetch account statuses by user id.

GET /api/v1/accounts/{$id}/statuses

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountStatusesById($id);

accountSearch($id)

Fetch accounts by search query.

GET /api/v1/accounts/search?q={$id}

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountSearch($id);

accountBlocks()

Fetch account blocks of current user.

GET /api/v1/blocks

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountBlocks();

accountLikes()

Fetch likes of current user.

GET /api/v1/favourites

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountLikes();

accountFollowRequests()

Fetch follow requests of current user.

GET /api/v1/follow_requests

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountFollowRequests();

instance()

Fetch pixelfed instance data.

GET /api/v1/instance

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->instance();

accountMutes()

Fetch account mutes of current user.

GET /api/v1/mutes

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountMutes();

accountNotifications()

Fetch notifications of current user.

GET /api/v1/notifications

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountNotifications();

homeTimeline()

Fetch home timeline.

GET /api/v1/timelines/home

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->homeTimeline();

publicTimeline()

Fetch public timeline.

GET /api/v1/timelines/public

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->publicTimeline();

statusById($id)

Fetch status by id.

GET /api/v1/statuses/{$id}

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->statusById($id);

statusRebloggedById($id)

Fetch reblogs/shares by status id.

GET /api/v1/statuses/{$id}/reblogged_by

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->statusRebloggedById($id);

statusLikedById($id)

Fetch likes by status id.

GET /api/v1/statuses/{$id}/favourited_by

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->statusLikedById($id);

followAccountById($id)

Follow account by id.

POST /api/v1/accounts/{$id}/follow

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->followAccountById($id);

unfollowAccountById($id)

Unfollow account by id.

POST /api/v1/accounts/{$id}/unfollow

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->unfollowAccountById($id);

accountBlockById($id)

Block account by id.

POST /api/v1/accounts/{$id}/block

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountBlockById($id);

accountUnblockById($id)

Unblock account by id.

POST /api/v1/accounts/{$id}/unblock

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountUnblockById($id);

statusFavouriteById($id)

Like status by id.

POST /api/v1/statuses/{$id}/favourite

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->statusFavouriteById($id);

statusUnfavouriteById($id)

Unlike status by id.

POST /api/v1/statuses/{$id}/unfavourite

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->statusUnfavouriteById($id);

mediaUpload($file)

Upload media.

POST /api/v1/media

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->mediaUpload($file);

accountMuteById($id)

Mute account by id.

POST /api/v1/accounts/{$id}/mute

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountMuteById($id);

accountUnmuteById($id)

Unmute account by id.

POST /api/v1/accounts/{$id}/unmute

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->accountUnmuteById($id);

statusCreate($mediaIds = [], $caption = null, $sensitive = false, $scope = 'public', $inReplyToId = null)

Create new status, requires $mediaIds from mediaUpload()

POST /api/v1/statuses

AUTHENTICATION REQUIRED

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$token = 'personal-access-token-here';
$api = new PixelfedApi($domain, $token);
$data = $api->statusCreate($mediaIds, $caption = null, $sensitive = false, $scope = 'public', $inReplyToId = null);

nodeinfo()

Fetch instance nodeinfo.

GET /api/nodeinfo/2.0.json

use \Pixelfed\PixelfedApi;

$domain = 'https://pixelfed.social';
$api = new PixelfedApi($domain);
$data = $api->nodeinfo();

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Credits