acrosure / acrosure-php-sdk
PHP SDK for connecting with Acrosure Insurance Gateway
Requires
- php: >=5.5.0
Requires (Dev)
- phpunit/phpunit: 4.4.*
This package is not auto-updated.
Last update: 2024-09-29 06:20:15 UTC
README
PHP SDK for connecting with Acrosure Insurance Gateway
Installation
Install via Composer:
composer require acrosure/acrosure-php-sdk
Getting Started
Import AcrosureClient into your project.
require_once dirname(__FILE__).'/vendor/autoload.php';
Instantiate with an API key from Acrosure Dashboard.
$acrosureClient = new AcrosureClient([ "token" => "<your_api_key>", "endpointBase" => "<endpoint_base>" // as optional ]);
Basic Usage
AcrosureClient provides several objects such as application
, product
, etc. and associated APIs.
Any data will be inside an response object with data
key, along with meta data, such as:
{ "data": { ... }, "status": "ok", ... }
Application
Get
Get application with specified id.
$application = $acrosureClient->getApplicationManager()->get("<application_id>");
Create
Create an application.
$createdApplication = $acrosureClient->getApplicationManager()->create([ "product_id" => "<product_id>", // required "basic_data" => json_decode('{}'), "package_options" => json_decode('{}'), "additional_data" => json_decode('{}'), "package_code" => "<package_code>", "attachments": => [] ]);
Update
Update an application.
$updatedApplication = $acrosureClient->getApplicationManager()->update([ "application_id" => "<application_id>", // required "basic_data": json_decode('{}'), "package_options": json_decode('{}'), "additional_data": json_decode('{}'), "package_code": "<package_code>", "attachments": [] ]);
Get packages
Get current application available packages.
$packages = $acrosureClient->getApplicationManager()->getPackages("<application_id>");
Select package
Select package for current application.
$updatedApplication = $acrosureClient->getApplicationManager()->selectPackage([ "application_id" => "<application_id>", "package_code" => "<package_code>" ]);
Get package
Get selected package of current application.
$currentPackage = $acrosureClient->getApplicationManager()->getPackage( "<application_id>" );
Submit
Submit current application.
$submittedApplication = $acrosureClient->getApplicationManager()->submit( "<application_id>" );
Confirm
Confirm current application.
$confirmedApplication = $acrosureClient->getApplicationManager()->confirm( "<application_id>" );
List
List your applications (with or without query).
$applications = $acrosureClient->getApplicationManager()->getList(searchParams);
Product
Get
Get product with specified id.
$product = $acrosureClient->getProductManager()->get("<product_id>");
List
List your products (with or without query).
$products = $acrosureClient->getProductManager()->getList(searchParams);
Policy
Get
Get policy with specified id.
$policy = $acrosureClient->getPolicyManager()->get("<policy_id>");
List
List your policies (with or without query).
$policies = $acrosureClient->getPolicyManager()->getList(searchParams);
Data
Get
Get values for a handler (with or without dependencies, please refer to Acrosure API Document).
// Without dependencies $values = $acrosureClient->getDataManager()->get([ "handler" => "<some_handler>" ]); // With dependencies $values = $acrosureClient->getDataManager()->get([ "handler" => "<some_handler>", "dependencies" => ["<dependency_1>", "<dependency_2>"] ]);
Team
Get info
Get current team information.
$teamInfo = $acrosureClient->getTeamManager()->getInfo();
Other functionality
Verify webhook signature
Verify webhook signature by specify signature and raw data string. (Only Node.js environment)
$isSignatureValid = $acrosureClient->verifySignature( "<signature>", "<raw_data>" );
Associated Acrosure API endpoints
Application
/applications/get
/applications/list
/applications/create
/applications/update
/applications/get-packages
/applications/get-package
/applications/select-package
/applications/submit
/applications/confirm
/applications/get-hash
Product
/products/get
/products/list
Policy
/policies/get
/policies/list
Data
/data/get
Team
/teams/get-info