Please enable JavaScript to view this site.

Das Handbuch für den JobRouter Entwickler

Benötigen Sie zusätzliche Informationen zu einem Archiv, wie z. B. welche Indexfelder vorhanden sind, können Sie diese mit der GET-Route /application/users/:username/archives/:archive abfragen. Das Archiv wird anhand der Datenbanktabellennamen oder der GUID identifiziert (Parameter :archive). Der Aufruf erfolgt in einem Benutzerkontext. Nur Benutzer mit Zugriff auf das Archiv können diese Informationen auslesen. Der Benutzer wird anhand des Benutzernamens identifiziert (Parameter :username). Der Rückgabewert ist in folgendem JSON-Format:

{

    "users": {

        "archives": [

            {

                "name": "Invoices",

                ... weitere Archiveigenschaften ...

                "indexFieldDefinitions": [

                    {

                        "name": "deadline",

                        ... weitere Indexfeld-Eigenschaften ...

                    },

                    ... weitere Indexfelder ...

                ]

            }

        ]

    }

}

Beispiel: Pflichtfelder ermitteln

guzzlehttp

// Benutzer wurde bereits authentifiziert

 

try {

 

    $response = $client->request(

        'GET',

        'application/users/jdoe/archives/invoices'

    );

    $responseBody = json_decode($response->getBody(), true);

    $archiveDetails = $body['users']['archives'][0];

    $requiredFields = [];

    foreach ($archiveDetails['indexFieldDefinitions'] as $fieldDefinition) {

        if ($fieldDefinition['required']) {

            array_push($requiredFields, $fieldDefinition['name']);

        }

    }

    echo "Pflichtfelder: " . implode(',', $requiredFields) . "\n";

 

} catch (Exception $e) {

    echo "Fehler beim Ausführen: " . $e->getMessage() . "\n";

}

 

// Benutzer-Session beenden

cURL

// Benutzer wurde bereits authentifiziert

 

curl_setopt($curlHandle, CURLOPT_URL,

    'http://example.org/jobrouter/api/rest/v2/application/users/jdoe/archives/invoices');

curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curlHandle, CURLOPT_CUSTOMREQUEST, 'GET');

curl_setopt($curlHandle, CURLOPT_COOKIEFILE, 'path/to/cooke/file.cookie');

 

$response = curl_exec($curlHandle);

$statusCode = curl_getinfo($curlHandle, CURLINFO_HTTP_CODE);

 

curl_close();

 

if ($statusCode == 200) {

    $decodedResponse = json_decode($response, true);

    $archiveDetails = $response['users']['archives'][0];

 

    $requiredFields = [];

 

    foreach ($archiveDetails['indexFieldDefinitions'] as $fieldDefinition){

        if ($fieldDefinition['required']) {

            array_push($requiredFields, $fieldDefinition['name']);

        }

    }

    echo "Pflichtfelder: " . implode(',', $requiredFields) . "\n";

} else {

    echo "Fehler beim Ausführen:  Code - " . $statusCode . ", ";

    echo "Response: " . var_export($response, true);

}

 

// Benutzer-Session beenden