Formati dei messaggi di richiesta e risposta
Formati dei messaggi di richiesta e risposta
La richiesta
Ogni metodo API in
Adaptive Planning
L'API prevede che il documento XML nel suo corpo abbia una struttura simile alla seguente:<?xml version='1.0' encoding='UTF-8'?> <call method="exportData" callerName="a string that identifies your client application"> <credentials login="sample@company.com" password="my_pwd"/> method specific data goes here </call>
Di seguito è riportata una descrizione di ciascuna delle righe pertinenti:
- Questa riga indica che i dati successivi sono codificati XML in UTF-8.
- Il tag <call> indica quale metodo API viene chiamato utilizzando il relativo attributo del metodo. In questo esempio, il metodo API è exportData. Inoltre, callerName è un attributo obbligatorio nel tag <call>. Identifica l'applicazione client nel sistema e viene utilizzato a scopo di identificazione durante la risoluzione dei problemi e la registrazione.
- Ogni metodo API deve autenticare l'utente che effettua la chiamata. Questa operazione viene in genere eseguita fornendo un nome di accesso e una password. È possibile specificare altri attributi qui. Per ulteriori dettagli sulle credenziali, consultare la documentazione di ogni funzione API.
- Alcuni metodi API richiedono dati aggiuntivi nella richiesta. Ad esempio, il metodo exportData richiede alcuni criteri che descrivono quali periodi di tempo, conti, livelli e così via devono essere utilizzati per il recupero dei dati. Questa parte della richiesta varia da metodo a metodo.
- Questo è il tag di chiusura del tag di chiamata nella riga 2.
La risposta
Ogni risposta da un metodo API avrà la struttura seguente:
<?xml version='1.0' encoding='UTF-8'?> <response success="true"> <messages> <message key="modeled-import-success">Personnel import successful. Rows imported: 100</message> </messages> <output> ... method output ... </output> </response>
Di seguito è riportata una descrizione delle righe pertinenti:
- Analogamente alla richiesta, questa riga indica che i dati successivi sono formattati come XML e codificati in UTF-8.
- Ogni risposta è racchiusa in un tag <response>. Se la richiesta ha esito positivo, l'attributo success nel tag di risposta viene impostato su true. Se la richiesta non ha avuto esito positivo, l'attributo success viene impostato su false.
- Molte chiamate API restituiranno questo blocco <messages> facoltativo contenente un elenco di messaggi generati dal server. Questo blocco potrebbe non essere visualizzato se il server non ha messaggi da restituire in risposta alla chiamata. I messaggi di errore verranno sempre visualizzati all'interno del blocco dei messaggi.
- Ogni messaggio all'interno del blocco messaggi ha un attributo chiave che identifica il tipo di messaggio trasmesso. Il tag message contiene anche il testo del messaggio del server, inclusi eventuali valori restituiti, valori di stato o altri metadati autonomi relativi all'esito positivo o negativo della richiesta. Una risposta può contenere un numero illimitato di tag messaggio.
- Il tag dei messaggi di chiusura.
- L'output effettivo della chiamata al metodo API, se restituito, è racchiuso in un tag <output>.
- L'output effettivo della chiamata al metodo API verrà visualizzato qui. Questo output varia a seconda del metodo chiamato.
- Il tag di output di chiusura.
- Il tag di risposta di chiusura.