Sample code for 30+ languages & platforms
PHP Extension

Datev - Get a List of Clients

See more Datev Examples

Demonstrates how to get a list of clients in the accounting:clients Datev API.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

$http = new CkHttp();

// Implements the following CURL command:

// curl --request GET \
//   --url "https://accounting-clients.api.datev.de/platform/v2/clients?filter=REPLACE_THIS_VALUE&skip=REPLACE_THIS_VALUE&top=REPLACE_THIS_VALUE" \
//   --header "Authorization: Bearer REPLACE_BEARER_TOKEN" \
//   --header "X-Datev-Client-ID: clientId" \
//   --header "accept: application/json;charset=utf-8"

// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code

$queryParams = new CkJsonObject();
// ignore = queryParams.UpdateString("filter","REPLACE_THIS_VALUE");
// ignore = queryParams.UpdateString("skip","REPLACE_THIS_VALUE");
// ignore = queryParams.UpdateString("top","REPLACE_THIS_VALUE");

// Adds the "Authorization: Bearer REPLACE_BEARER_TOKEN" header.
$http->put_AuthToken('REPLACE_BEARER_TOKEN');
$http->SetRequestHeader('accept','application/json;charset=utf-8');
$http->SetRequestHeader('X-Datev-Client-ID','DATEV_CLIENT_ID');

$resp = new CkHttpResponse();
$success = $http->HttpParams('GET','https://accounting-clients.api.datev.de/platform-sandbox/v2/clients',$queryParams,$resp);
if ($success == false) {
    print $http->lastErrorText() . "\n";
    exit;
}

print $resp->get_StatusCode() . "\n";
print $resp->bodyStr() . "\n";

$jarr = new CkJsonArray();

// Insert code here to load the above JSON array into the jarr object.
$jarr->Load($resp->bodyStr());

$i = 0;
$count_i = $jarr->get_Size();
while ($i < $count_i) {
    // json is a CkJsonObject
    $json = $jarr->ObjectAt($i);
    $client_number = $json->IntOf('client_number');
    $consultant_number = $json->IntOf('consultant_number');
    $id = $json->stringOf('id');
    $name = $json->stringOf('name');
    $j = 0;
    $count_j = $json->SizeOfArray('services');
    while ($j < $count_j) {
        $json->put_J($j);
        $name = $json->stringOf('services[j].name');
        $k = 0;
        $count_k = $json->SizeOfArray('services[j].scopes');
        while ($k < $count_k) {
            $json->put_K($k);
            $strVal = $json->stringOf('services[j].scopes[k]');
            $k = $k + 1;
        }

        $j = $j + 1;
    }

    $i = $i + 1;
}


?>