A4. SocrateCloud API 4.0

Differences by API 1.0, 2.0, 3.0

1. Send trough API the user document

Starting with version 4.0 you can send trough API the user (nominal people) who operates the document using a generic user to authenticate.

The following setup is required:

1.Users windows:

    • API Generic User checkbox: set to Yes

    • Nominal API Identifier: you can use different identifiers like: email, value, ID, CNP = Tax ID of BPartner associated to the user

2. The access token will be used the same, see User Authentication using email/password of the generic user. Use the token associated with the generic role.

3. When using API methods beside access token, in request header send ExecuteAs parameter:

see URL: https://api.socratecloud.com/webapi/rest/bpartner/full/create/4?&accessToken=DrtN1qKYykL8yS4mHFB07AxXxZhVjvsz&ExecuteAs=CNP

    • ExecuteAs parameter: use CNP, or email, value, ID of the user who operates the document.

Romanian Version:

Sunt necesare urmatoarele setari:

1. Pe definire utilizator (fereastra Utilizatori), doar daca exista componenta API se pot seta urmatoarele:

    • Utilizator generic API: bifa Da/Nu

    • Identificator nominal API: Lista. Se poate seta doar daca bifa "Utilizator generic API" = Da

    • Sunt disponibile urmatoarele variante: email, cod cautare, ID, CNP (CNP = CUI tert angajat asociat utilizatorului)

2. La apelurile API se obtine token-ul de acces ca si pana acum cu Email/Password pentu utilizatorul generic.

Este important ca apelurile sa se faca doar cu token-ul aferent rolului acestui utilizator generic, nu cu token-ul returnat pentru eventualele roluri ale utilizatorului logat.

3. La apelurile de metode API, pe langa token-ul de acces se poate transmite in request header (adica parametru in URL query string) parametrul ExecuteAs.

exemplu URL: https://api.socratecloud.com/webapi/rest/bpartner/full/create/4?&accessToken=DrtN1qKYykL8yS4mHFB07AxXxZhVjvsz&ExecuteAs=CNP

Valoarea acestui parametru se va folosi doar daca utilizatorul folosit la obtinerea token-ului de acces are bifa "Utilizator generic API" = Da. In caz contrar parametrul este ignorat.

Valoarea parametrului ExecuteAs trebuie sa corespunda cu setarea "Identificator nominal API" de la utilizatorul generic API care a obtinut token-ul de acces. Daca se transmite parametrul ExecuteAs fara valoare sau nu se transmite deloc, apelul API se va face chiar in numele utilizatorului care a obtinut token-ul de acces (utilizatorul generic)

Daca parametrul ExecuteAs are valoare dar care nu identifica niciun utilizator sau identifica mai mult de un singur utilizator, atunci apelul se va termina cu eroare (ErrorCode=103).