Skip to content

Commit 634f9e0

Browse files
authored
Merge pull request #1 from merch-one/#1
Added possibility to use Guzzle Request Options
2 parents d21dcdc + 637a64f commit 634f9e0

20 files changed

Lines changed: 146 additions & 91 deletions

composer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
],
1212
"type": "library",
1313
"license": "MIT",
14-
"version": "1.0.1",
14+
"version": "1.0.2",
1515
"require": {
1616
"php": ">=7.4",
1717
"guzzlehttp/guzzle": "^6|^7",
@@ -21,7 +21,7 @@
2121
},
2222
"autoload": {
2323
"psr-4": {
24-
"MerchOne\\PhpSdk\\": "src/"
24+
"MerchOne\\PhpApiSdk\\": "src/"
2525
}
2626
},
2727
"authors": [

readme.md

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ composer require merch-one/php-api-sdk
3131

3232
### Basic Usage
3333

34-
**Create an instance of `MerchOne\PhpSdk\Http\Client`**
34+
**Create an instance of `MerchOne\PhpApiSdk\Http\Client`**
3535

3636
```php
37-
use MerchOne\PhpSdk\Http\Client;
37+
use MerchOne\PhpApiSdk\Http\Client;
3838

3939
class MyService
4040
{
@@ -59,15 +59,15 @@ class MyService
5959
);
6060

6161
/* Interact with Catalog API */
62-
/** @var \MerchOne\PhpSdk\Contracts\Clients\CatalogApi $catalogApi */
62+
/** @var \MerchOne\PhpApiSdk\Contracts\Clients\CatalogApi $catalogApi */
6363
$catalogApi = $this->httpClient->catalog();
6464

6565
/* Interact with Orders API */
66-
/** @var \MerchOne\PhpSdk\Contracts\Clients\OrdersApi $ordersApi */
66+
/** @var \MerchOne\PhpApiSdk\Contracts\Clients\OrdersApi $ordersApi */
6767
$ordersApi = $this->httpClient->orders();
6868

6969
/* Interact with Shipping API */
70-
/** @var \MerchOne\PhpSdk\Contracts\Clients\ShippingApi $shippingApi */
70+
/** @var \MerchOne\PhpApiSdk\Contracts\Clients\ShippingApi $shippingApi */
7171
$shippingApi = $this->httpClient->shipping();
7272

7373
// switch API version you interact with
@@ -78,13 +78,20 @@ class MyService
7878
}
7979
}
8080
```
81+
- The `Client` class accepts two parameters:
82+
- `$version` - API version to interact with. Default value is `beta`.
83+
- See [Helpers](#helpers) for available versions.
84+
- `$clientOptions` - Custom options to use with request.
85+
- See [Guzzle Documentation](https://docs.guzzlephp.org/en/stable/request-options.html) for available options.
86+
- The `User-Agent`, `Accept` and `Content-Type` headers, as well as `http_error` properties **CAN NOT** be overwritten !
87+
8188

8289
---
8390

8491
### Helpers
8592

8693
```php
87-
use MerchOne\PhpSdk\Util\MerchOneApi;
94+
use MerchOne\PhpApiSdk\Util\MerchOneApi;
8895

8996
// get the list of all available API versions
9097
MerchOneApi::getVersions();

src/Clients/BaseApiClient.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Clients;
3+
namespace MerchOne\PhpApiSdk\Clients;
44

55
use GuzzleHttp\Client as GuzzleClient;
66
use GuzzleHttp\Exception\GuzzleException;
77
use GuzzleHttp\Psr7\Response as PsrResponse;
8-
use MerchOne\PhpSdk\Exceptions\InvalidCredentialsException;
9-
use MerchOne\PhpSdk\Exceptions\MerchOneApiClientException;
10-
use MerchOne\PhpSdk\Exceptions\MerchOneApiServerException;
11-
use MerchOne\PhpSdk\Http\Response;
12-
use MerchOne\PhpSdk\Util\Data;
8+
use MerchOne\PhpApiSdk\Exceptions\InvalidCredentialsException;
9+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiClientException;
10+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiServerException;
11+
use MerchOne\PhpApiSdk\Http\Response;
12+
use MerchOne\PhpApiSdk\Util\Data;
1313
use Tightenco\Collect\Support\Collection;
1414
use Tightenco\Collect\Support\Enumerable;
1515

src/Clients/Beta/Catalog.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Clients\Beta;
3+
namespace MerchOne\PhpApiSdk\Clients\Beta;
44

5-
use MerchOne\PhpSdk\Clients\BaseApiClient;
6-
use MerchOne\PhpSdk\Contracts\Clients\CatalogApi;
7-
use MerchOne\PhpSdk\Exceptions\MerchOneApiClientException;
8-
use MerchOne\PhpSdk\Exceptions\MerchOneApiServerException;
5+
use MerchOne\PhpApiSdk\Clients\BaseApiClient;
6+
use MerchOne\PhpApiSdk\Contracts\Clients\CatalogApi;
7+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiClientException;
8+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiServerException;
99
use Tightenco\Collect\Support\Enumerable;
1010

1111
class Catalog extends BaseApiClient implements CatalogApi

src/Clients/Beta/Orders.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Clients\Beta;
3+
namespace MerchOne\PhpApiSdk\Clients\Beta;
44

5-
use MerchOne\PhpSdk\Clients\BaseApiClient;
6-
use MerchOne\PhpSdk\Contracts\Clients\OrdersApi;
7-
use MerchOne\PhpSdk\Exceptions\MerchOneApiClientException;
8-
use MerchOne\PhpSdk\Exceptions\MerchOneApiServerException;
9-
use MerchOne\PhpSdk\Util\Data;
5+
use MerchOne\PhpApiSdk\Clients\BaseApiClient;
6+
use MerchOne\PhpApiSdk\Contracts\Clients\OrdersApi;
7+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiClientException;
8+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiServerException;
9+
use MerchOne\PhpApiSdk\Util\Data;
1010
use Tightenco\Collect\Support\Enumerable;
1111

1212
class Orders extends BaseApiClient implements OrdersApi

src/Clients/Beta/Shipping.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Clients\Beta;
3+
namespace MerchOne\PhpApiSdk\Clients\Beta;
44

5-
use MerchOne\PhpSdk\Clients\BaseApiClient;
6-
use MerchOne\PhpSdk\Contracts\Clients\ShippingApi;
7-
use MerchOne\PhpSdk\Exceptions\MerchOneApiClientException;
8-
use MerchOne\PhpSdk\Exceptions\MerchOneApiServerException;
5+
use MerchOne\PhpApiSdk\Clients\BaseApiClient;
6+
use MerchOne\PhpApiSdk\Contracts\Clients\ShippingApi;
7+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiClientException;
8+
use MerchOne\PhpApiSdk\Exceptions\MerchOneApiServerException;
99
use Tightenco\Collect\Support\Enumerable;
1010

1111
class Shipping extends BaseApiClient implements ShippingApi

src/Contracts/Clients/CatalogApi.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Contracts\Clients;
3+
namespace MerchOne\PhpApiSdk\Contracts\Clients;
44

55
use Tightenco\Collect\Support\Enumerable;
66

src/Contracts/Clients/OrdersApi.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Contracts\Clients;
3+
namespace MerchOne\PhpApiSdk\Contracts\Clients;
44

55
use Tightenco\Collect\Support\Enumerable;
66

src/Contracts/Clients/ShippingApi.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Contracts\Clients;
3+
namespace MerchOne\PhpApiSdk\Contracts\Clients;
44

55
use Tightenco\Collect\Support\Enumerable;
66

src/Contracts/Http/HttpClient.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
<?php
22

3-
namespace MerchOne\PhpSdk\Contracts\Http;
3+
namespace MerchOne\PhpApiSdk\Contracts\Http;
44

5-
use MerchOne\PhpSdk\Contracts\Clients\CatalogApi;
6-
use MerchOne\PhpSdk\Contracts\Clients\OrdersApi;
7-
use MerchOne\PhpSdk\Contracts\Clients\ShippingApi;
5+
use MerchOne\PhpApiSdk\Contracts\Clients\CatalogApi;
6+
use MerchOne\PhpApiSdk\Contracts\Clients\OrdersApi;
7+
use MerchOne\PhpApiSdk\Contracts\Clients\ShippingApi;
88

99
interface HttpClient
1010
{
1111
/**
1212
* @param string $version
13+
* @param array $clientOptions
1314
*/
14-
public function __construct(string $version);
15+
public function __construct(string $version, array $clientOptions = []);
1516

1617
/**
1718
* @param string $user

0 commit comments

Comments
 (0)