tucker-and-nielsen-plc / colorado-booth-sdk
test
Package info
github.com/ZahraN444/colorado-booth-php-sdk
pkg:composer/tucker-and-nielsen-plc/colorado-booth-sdk
Requires
- php: ^7.2 || ^8.0
- ext-curl: *
- ext-json: *
- apimatic/core: ~0.3.17
- apimatic/core-interfaces: ~0.1.5
- apimatic/unirest-php: ^4.0.6
Requires (Dev)
- phan/phan: 5.4.5
- phpunit/phpunit: ^7.5 || ^8.5 || ^9.5 || ^10.0 || ^11.0
- squizlabs/php_codesniffer: ^3.5
README
Introduction
API for Markdown Notes app.
Install the Package
Run the following command to install the package and automatically add the dependency to your composer.json file:
composer require "tucker-and-nielsen-plc/colorado-booth-sdk:1.1.3"
Or add it to the composer.json file manually as given below:
"require": { "tucker-and-nielsen-plc/colorado-booth-sdk": "1.1.3" }
You can also view the package at: https://packagist.org/packages/tucker-and-nielsen-plc/colorado-booth-sdk#1.1.3
Test the SDK
Unit tests in this SDK can be run using PHPUnit.
- First install the dependencies using composer including the
require-devdependencies. - Run
vendor\bin\phpunit --verbosefrom commandline to execute tests. If you have installed PHPUnit globally, run tests usingphpunit --verboseinstead.
You can change the PHPUnit test configuration in the phpunit.xml file.
Initialize the API Client
Note: Documentation for the client can be found here.
The following parameters are configurable for the API Client:
| Parameter | Type | Description |
|---|---|---|
| accessToken2 | string |
|
| port | string |
Default: '80' |
| suites | int(SuiteCodeEnum) |
Default: SuiteCodeEnum::HEARTS |
| environment | Environment |
The API environment. Default: Environment.TESTING |
| timeout | int |
Timeout for API calls in seconds. Default: 0 |
| enableRetries | bool |
Whether to enable retries and backoff feature. Default: false |
| numberOfRetries | int |
The number of retries to make. Default: 0 |
| retryInterval | float |
The retry time interval between the endpoint calls. Default: 1 |
| backOffFactor | float |
Exponential backoff factor to increase interval between retries. Default: 2 |
| maximumRetryWaitTime | int |
The maximum wait time in seconds for overall retrying requests. Default: 0 |
| retryOnTimeout | bool |
Whether to retry on request timeout. Default: true |
| httpStatusCodesToRetry | array |
Http status codes to retry against. Default: 408, 413, 429, 500, 502, 503, 504, 521, 522, 524 |
| httpMethodsToRetry | array |
Http methods to retry against. Default: 'GET', 'PUT' |
| proxyConfiguration | ProxyConfigurationBuilder |
Represents the proxy configurations for API calls |
| basicAuthCredentials | BasicAuthCredentials |
The Credentials Setter for Basic Authentication |
| apiKeyCredentials | ApiKeyCredentials |
The Credentials Setter for Custom Query Parameter |
| apiHeaderCredentials | ApiHeaderCredentials |
The Credentials Setter for Custom Header Signature |
| oAuthCCGCredentials | OAuthCCGCredentials |
The Credentials Setter for OAuth 2 Client Credentials Grant |
| oAuthACGCredentials | OAuthACGCredentials |
The Credentials Setter for OAuth 2 Authorization Code Grant |
| oAuthROPCGCredentials | OAuthROPCGCredentials |
The Credentials Setter for OAuth 2 Resource Owner Credentials Grant |
| oAuthBearerTokenCredentials | OAuthBearerTokenCredentials |
The Credentials Setter for OAuth 2 Bearer token |
The API client can be initialized as follows:
use MultiAuthSampleLib\Models\SuiteCodeEnum; use MultiAuthSampleLib\Environment; use MultiAuthSampleLib\Authentication\BasicAuthCredentialsBuilder; use MultiAuthSampleLib\Authentication\ApiKeyCredentialsBuilder; use MultiAuthSampleLib\Authentication\ApiHeaderCredentialsBuilder; use MultiAuthSampleLib\Authentication\OAuthCCGCredentialsBuilder; use MultiAuthSampleLib\Authentication\OAuthACGCredentialsBuilder; use MultiAuthSampleLib\Models\OAuthScopeOAuthACGEnum; use MultiAuthSampleLib\Authentication\OAuthROPCGCredentialsBuilder; use MultiAuthSampleLib\Authentication\OAuthBearerTokenCredentialsBuilder; use MultiAuthSampleLib\MultiAuthSampleClientBuilder; $client = MultiAuthSampleClientBuilder::init() ->basicAuthCredentials( BasicAuthCredentialsBuilder::init( 'Username', 'Password' ) ) ->apiKeyCredentials( ApiKeyCredentialsBuilder::init( 'token', 'api-key' ) ) ->apiHeaderCredentials( ApiHeaderCredentialsBuilder::init( 'token', 'api-key' ) ) ->oAuthCCGCredentials( OAuthCCGCredentialsBuilder::init( 'OAuthClientId', 'OAuthClientSecret' ) ) ->oAuthACGCredentials( OAuthACGCredentialsBuilder::init( 'OAuthClientId', 'OAuthClientSecret', 'OAuthRedirectUri' ) ->oAuthScopes( [ OAuthScopeOAuthACGEnum::READ_SCOPE ] ) ) ->oAuthROPCGCredentials( OAuthROPCGCredentialsBuilder::init( 'OAuthClientId', 'OAuthClientSecret', 'OAuthUsername', 'OAuthPassword' ) ) ->oAuthBearerTokenCredentials( OAuthBearerTokenCredentialsBuilder::init( 'AccessToken' ) ) ->accessToken2('accessToken') ->environment(Environment::TESTING) ->port('80') ->suites(SuiteCodeEnum::HEARTS) ->build();
Environments
The SDK can be configured to use a different environment for making API calls. Available environments are:
Fields
| Name | Description |
|---|---|
| PRODUCTION | - |
| TESTING | Default |
Authorization
This API uses the following authentication schemes.
basicAuth (Basic Authentication)apiKey (Custom Query Parameter)apiHeader (Custom Header Signature)OAuthCCG (OAuth 2 Client Credentials Grant)OAuthACG (OAuth 2 Authorization Code Grant)OAuthROPCG (OAuth 2 Resource Owner Credentials Grant)OAuthBearerToken (OAuth 2 Bearer token)CustomAuth (Custom Authentication)