PHP code example of avtocod / b2b-api-php

1. Go to this page and download the library: Download avtocod/b2b-api-php library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

avtocod / b2b-api-php example snippets




use Avtocod\B2BApi\Client;
use Avtocod\B2BApi\Settings;
use Avtocod\B2BApi\Tokens\Auth\AuthToken;

$client = new Client(new Settings(AuthToken::generate('username', 'password', 'domain')));

 /** @var \Avtocod\B2BApi\Client $client */

// Test connection
$client->devPing(new \Avtocod\B2BApi\Params\DevPingParams);

// Debug token generation
$client->devToken(new \Avtocod\B2BApi\Params\DevTokenParams('username', 'password'));

// Retrieve information about current user
$client->user(new \Avtocod\B2BApi\Params\UserParams);

// Retrieve balance information for report type
$client->userBalance(new \Avtocod\B2BApi\Params\UserBalanceParams('report_type_uid@domain'));

// Retrieve report types data
$client->userReportTypes(new \Avtocod\B2BApi\Params\UserReportTypesParams);

// Get reports list
$client->userReports(new \Avtocod\B2BApi\Params\UserReportsParams);

// Get report by unique report ID
$client->userReport(new \Avtocod\B2BApi\Params\UserReportParams('report_uid_SOMEIDENTIFIERGOESHERE@domain'));

// Make (generate) report
$client->userReportMake(new \Avtocod\B2BApi\Params\UserReportMakeParams('report_type_uid@domain', 'VIN', 'Z94CB41AAGR323020'));

// Refresh existing report
$client->userReportRefresh(new \Avtocod\B2BApi\Params\UserReportRefreshParams('report_uid_SOMEIDENTIFIERGOESHERE@domain'));

 /** @var \Avtocod\B2BApi\Client $client */

// Make report (this operation is asynchronous)
$report_uid = $client
    ->userReportMake(
        (new \Avtocod\B2BApi\Params\UserReportMakeParams('some_report_uid', 'GRZ', 'A111AA177'))
            ->setForce(true)
            ->setOnUpdateUrl('https://example.com/webhook/updated')
            ->setOnCompleteUrl('https://example.com/webhook/completed')
    )
    ->first()
    ->getReportUid();

// Wait for report is ready
while (true) {
    $user_report_params = (new \Avtocod\B2BApi\Params\UserReportParams($report_uid))->setIncludeContent(false);
    if ($client->userReport($user_report_params)->first()->isCompleted()) {
        break;
    }

    \sleep(1);
}

$content = $client->userReport(new \Avtocod\B2BApi\Params\UserReportParams($report_uid))->first()->getContent();

$vin_code  = $content->getByPath('identifiers.vehicle.vin');   // (string) 'JTMHX05J704083922'
$engine_kw = $content->getByPath('tech_data.engine.power.kw'); // (int) 227
shell
$ composer