https://github.com/lob/lob-php
PHP Client for Lob API
https://github.com/lob/lob-php
Last synced: 9 months ago
JSON representation
PHP Client for Lob API
- Host: GitHub
- URL: https://github.com/lob/lob-php
- Owner: lob
- License: mit
- Created: 2013-07-16T00:54:15.000Z (over 12 years ago)
- Default Branch: main
- Last Pushed: 2024-02-01T20:21:56.000Z (almost 2 years ago)
- Last Synced: 2024-04-14T10:12:30.737Z (over 1 year ago)
- Language: PHP
- Homepage: https://lob.com
- Size: 2.06 MB
- Stars: 67
- Watchers: 63
- Forks: 21
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Contributing: .github/Contributing.md
Awesome Lists containing this project
README
# OpenAPIClient-php
The Lob API is organized around REST. Our API is designed to have predictable, resource-oriented URLs and uses HTTP response codes to indicate any API errors.
For more information, please visit [our API documentation](https://docs.lob.com/).
Looking for our [legacy PHP SDK](https://github.com/lob/lob-php/tree/v3-legacy)?
## Requirements
PHP 7.3 and later.
Should also work with PHP 8.0 but has not been tested.
## Getting Started
### Registration
First, you will need to first create an account at [Lob.com](https://dashboard.lob.com/#/register) and obtain your Test and Live API Keys.
Once you have created an account, you can access your API Keys from the [Settings Panel](https://dashboard.lob.com/#/settings).
### Installation & Usage
#### Composer
To install the bindings via [Composer](https://getcomposer.org/), run `php composer.phar install`
### Manual Installation
Download the files and include `autoload.php`:
```php
setUsername('YOUR_USERNAME')
->setPassword('YOUR_PASSWORD');
$apiInstance = new OpenAPI\Client\Api\AddressesApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client(),
$config
);
$address_editable = new \OpenAPI\Client\Model\AddressEditable(); // \OpenAPI\Client\Model\AddressEditable
try {
$result = $apiInstance->addressCreate($address_editable);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AddressesApi->addressCreate: ', $e->getMessage(), PHP_EOL;
}
```
## API Documentation
The full and comprehensive documentation of Lob's APIs is available [here](https://docs.lob.com/).
## Authorization
### basicAuth
- **Type**: HTTP basic authentication
## Testing
Before running tests,
```bash
$ composer install
```
### Unit Tests
```bash
$ vendor/bin/phpunit --group unit --coverage-text --coverage-html coverage/html
```
### Integration Tests
Integration tests run against a live deployment of the Lob API and require multiple valid API keys with access to specific features. As such, it is not expected that these tests will pass for every user in every environment.
To run integration tests:
```bash
$ LOB_API_TEST_KEY=<> LOB_API_LIVE_KEY=<> vendor/bin/phpunit --group integration --coverage-text --coverage-html coverage/html
```
#### A cleaner alternative if you are going to run integration tests frequently
Run this the first time:
```bash
$ echo "LOB_API_TEST_KEY=<> LOB_API_LIVE_KEY=<>" > LOCAL.env
```
Then, to run the integration tests:
```bash
$ env $(cat LOCAL.env) vendor/bin/phpunit --group integration --coverage-text --coverage-html coverage/html
```
## Author
lob-openapi@lob.com
## About this package
This PHP package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: `1.3.0`
- Package version: `1.0.0`
- Build package: `org.openapitools.codegen.languages.PhpClientCodegen`