Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tumblr/tumblr.php
Tumblr API v2 PHP Client
https://github.com/tumblr/tumblr.php
Last synced: 3 months ago
JSON representation
Tumblr API v2 PHP Client
- Host: GitHub
- URL: https://github.com/tumblr/tumblr.php
- Owner: tumblr
- License: apache-2.0
- Created: 2013-03-12T19:47:42.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2023-11-28T15:06:02.000Z (12 months ago)
- Last Synced: 2024-05-29T12:33:23.679Z (6 months ago)
- Language: PHP
- Size: 98.6 KB
- Stars: 406
- Watchers: 65
- Forks: 116
- Open Issues: 25
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# tumblr.php
[![CI](https://github.com/tumblr/tumblr.php/actions/workflows/ci.yaml/badge.svg)](https://github.com/tumblr/tumblr.php/actions/workflows/ci.yaml)
The official PHP client for the [Tumblr API](https://www.tumblr.com/docs/en/api/v2).
## Usage
### Basic Usage
The first step is setting up a Client:
``` php
$client = new Tumblr\API\Client($consumerKey, $consumerSecret);
$client->setToken($token, $tokenSecret);
```And then you can do anything you'd like:
``` php
foreach ($client->getUserInfo()->user->blogs as $blog) {
echo $blog->name . "\n";
}
```### User Methods
``` php
$client->getUserInfo();$client->getDashboardPosts($options = null);
$client->getLikedPosts($options = null);
$client->getFollowedBlogs($options = null);$client->follow($blogName);
$client->unfollow($blogName);$client->like($postId, $reblogKey);
$client->unlike($postId, $reblogKey);
```### Blog Methods
``` php
$client->getBlogInfo($blogName);$client->getBlogAvatar($blogName, $size = null);
$client->getBlogPosts($blogName, $options = null);
$client->getBlogLikes($blogName, $options = null);
$client->getBlogFollowers($blogName, $options = null);$client->getQueuedPosts($blogName, $options = null);
$client->getDraftPosts($blogName, $options = null);
$client->getSubmissionPosts($blogName, $options = null);
```### Post Methods
``` php
$client->createPost($blogName, $data);
$client->editPost($blogName, $id, $data);
$client->deletePost($blogName, $id, $reblogKey);
$client->reblogPost($blogName, $id, $reblogKey, $options = null);
```### Tagged Methods
``` php
$client->getTaggedPosts($tag, $options = null);
```## Examples
Examples and "Getting Started" guide are available in [the `examples` folder](examples).
## Dependencies
tumblr.php is available [on Packagist](https://packagist.org/packages/tumblr/tumblr)
* guzzle/guzzle 6.x or 7.x
* eher/oauth 1.0.xIf you're using Composer (you should!) you can just run `composer require tumblr/tumblr` and you'll be good to go.
More details on [getcomposer.org](https://getcomposer.org/).## Running tests
tumblr.php has full unit tests that can be run with PHPUnit like this:
``` bash
php vendor/bin/phpunit
```This will also generate a coverage report into `./build/coverage`:
```bash
XDEBUG_MODE=coverage php vendor/bin/phpunit --coverage-html=build/coverage
```## Copyright and license
Copyright 2013 Tumblr, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this work except in compliance with the License. You may obtain a copy of
the License in the LICENSE file, or at:http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations.