sdksio / apimatic-ak-sdk
Test APIs from APIMatic to demonstrate the SDKs
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
- squizlabs/php_codesniffer: ^3.5
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Introduction
Akoya product APIs for data access. Default servers are set for the Akoya sandbox environment.
Akoya APIs include the following updates:
- v2.2.2
- Added mode query parameter to Account Information, Balances, Investments, and Transactions to support standard mode.
- Edited callouts for Account Holder endpoint
- v2.2.1
- Fixed typo in
accountIdsquery parameter for/accounts-info,/balances,/accounts - Added security method for
Account holder informationto bear token. Missing method defaulted to basic auth. - Added examples and descriptions to some schemas
- Added HTTP status
429FDX error1207.
- Fixed typo in
- v2.2 Additions
- Added optional
x-akoya-interaction-typeheader to all endpoints to specify if a request is part of a batch process - Update of tags to organize endpoints by Akoya product
206response added to/accounts-info,/balances,/accounts
- Added optional
- v2.1 New Statements product and Customers product updated with additional endpoint,
Account holder information. - v2.0 Launch of Akoya products: Account Info, Balances, Investments, Transactions, Payments, Customers.
Install the Package
Run the following command to install the package and automatically add the dependency to your composer.json file:
composer require "sdksio/apimatic-ak-sdk:0.0.1"
Or add it to the composer.json file manually as given below:
"require": { "sdksio/apimatic-ak-sdk": "0.0.1" }
You can also view the package at: https://packagist.org/packages/sdksio/apimatic-ak-sdk#0.0.1
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 |
|---|---|---|
| environment | Environment |
The API environment. Default: Environment.PRODUCTION |
| 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' |
| loggingConfiguration | LoggingConfigurationBuilder |
Represents the logging configurations for API calls |
| proxyConfiguration | ProxyConfigurationBuilder |
Represents the proxy configurations for API calls |
| basicAuthCredentials | BasicAuthCredentials |
The Credentials Setter for Basic Authentication |
| bearerAuthCredentials | BearerAuthCredentials |
The Credentials Setter for OAuth 2 Bearer token |
The API client can be initialized as follows:
use AkoyaLib\Logging\LoggingConfigurationBuilder; use AkoyaLib\Logging\RequestLoggingConfigurationBuilder; use AkoyaLib\Logging\ResponseLoggingConfigurationBuilder; use Psr\Log\LogLevel; use AkoyaLib\Environment; use AkoyaLib\Authentication\BasicAuthCredentialsBuilder; use AkoyaLib\Authentication\BearerAuthCredentialsBuilder; use AkoyaLib\AkoyaClientBuilder; $client = AkoyaClientBuilder::init() ->basicAuthCredentials( BasicAuthCredentialsBuilder::init( 'Username', 'Password' ) ) ->bearerAuthCredentials( BearerAuthCredentialsBuilder::init( 'AccessToken' ) ) ->environment(Environment::PRODUCTION) ->loggingConfiguration( LoggingConfigurationBuilder::init() ->level(LogLevel::INFO) ->requestConfiguration(RequestLoggingConfigurationBuilder::init()->body(true)) ->responseConfiguration(ResponseLoggingConfigurationBuilder::init()->headers(true)) ) ->build();
Environments
The SDK can be configured to use a different environment for making API calls. Available environments are:
Fields
| Name | Description |
|---|---|
| PRODUCTION | Default Sandbox server |
| ENVIRONMENT2 | Products server |
Authorization
This API uses the following authentication schemes.
List of APIs
SDK Infrastructure
Configuration
- ProxyConfigurationBuilder
- LoggingConfigurationBuilder
- RequestLoggingConfigurationBuilder
- ResponseLoggingConfigurationBuilder