Sample code for 30+ languages & platforms
PowerShell

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 PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

$http = New-Object Chilkat.Http

# 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-Object Chilkat.JsonObject
# 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.AuthToken = "REPLACE_BEARER_TOKEN"
$http.SetRequestHeader("accept","application/json;charset=utf-8")
$http.SetRequestHeader("X-Datev-Client-ID","DATEV_CLIENT_ID")

$resp = New-Object Chilkat.HttpResponse
$success = $http.HttpParams("GET","https://accounting-clients.api.datev.de/platform-sandbox/v2/clients",$queryParams,$resp)
if ($success -eq $false) {
    $($http.LastErrorText)
    exit
}

$($resp.StatusCode)
$($resp.BodyStr)

$jarr = New-Object Chilkat.JsonArray

# Insert code here to load the above JSON array into the jarr object.
$jarr.Load($resp.BodyStr)

$i = 0
$count_i = $jarr.Size
while ($i -lt $count_i) {
    $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 -lt $count_j) {
        $json.J = $j
        $name = $json.StringOf("services[j].name")
        $k = 0
        $count_k = $json.SizeOfArray("services[j].scopes")
        while ($k -lt $count_k) {
            $json.K = $k
            $strVal = $json.StringOf("services[j].scopes[k]")
            $k = $k + 1
        }

        $j = $j + 1
    }

    $i = $i + 1
}