andrewtweber / proste-sdk
Proste SDK - easy SDK for any RESTful API.
Installs: 265
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 0
Type:project
Requires
- php: ^8.1
- guzzlehttp/guzzle: ^7.2
Requires (Dev)
- phpstan/phpstan: ^1.10
This package is not auto-updated.
Last update: 2024-12-09 09:01:55 UTC
README
Easy SDK for any RESTful API
To install simply run
$ composer require andrewtweber/proste-sdk
Extending
Proste is an abstract class. In most cases you simply need to extend it, give it a name, and specify the base URL
class GitHub extends SDK { public string $name = 'GitHub'; public string $base_url = 'https://api.github.com/'; }
Usage
All requests will throw an Exception if the HTTP status code returned is not 2**
The responses returned are expected to be JSON and are decoded into an array.
$github = new \Proste\GitHub(); try { $releases = $github->get('repos/andrewtweber/proste-sdk/releases'); dd($releases); $github->post('repos/andrewtweber/proste-sdk/issues', [ 'title' => 'New Issue', 'body' => 'Your project is terrible', ]); } catch (\Proste\Exceptions\HttpException $e) { }
Todo
- Make options available on all requests
- Basic authorization trait
- Tests