ssm.ro Docs
API pentru Dezvoltatori

Contacte

Endpoint-uri pentru gestionarea contactelor (angajaților) în platforma ssm.ro: preluare, creare și modificare.

Endpoint-urile de contacte permit sincronizarea angajaților din sistemul tău HR cu platforma ssm.ro. Un contact reprezintă un angajat înrolat în organizația ta.


Preluare contact

GET /v1/contacts/{id}

Returnează datele unui contact pe baza mărcii (ID-ului unic) și a numelui organizației.

Exemplu request:

GET /v1/contacts/M00212?organizatie=demo-organization

Parametri

ParametruÎnTipObligatoriuDescriere
idpathstringDaMarca — cheia unică de identificare a angajatului
organizatiequerystringDaNumele organizației

Răspunsuri

CodDescriere
200 OKObiect Employee
404 Not FoundContactul nu există — răspuns JSON cu mesaj de eroare
500 Server ErrorEroare internă server

Creare contact nou

POST /v1/contacts

Creează un contact nou în organizație. Dacă marca există deja, operațiunea va eșua.

Request body

Content-Type: application/json — obiect Employee.

Exemplu:

{
  "nume": "Ion",
  "prenume": "Popescu",
  "email": "ion.popescu@exemplu.ro",
  "departament": "Finanțe",
  "codDepartament": "D163",
  "cor": "Referent bancar",
  "post": "Tesa",
  "marca": "M00212",
  "marcaSuperior": "M00132",
  "adresa": "Str. Soarelui nr. 2",
  "localitate": "Brașov",
  "judet": "Brașov",
  "dataNasterii": "1981-08-24",
  "locatieFizica": "Office 101",
  "status": "activ",
  "organizatie": "demo-organization",
  "echipaPSI": "Nu"
}

Răspunsuri

CodDescriere
200 OKContactul a fost creat — returnează obiectul Employee
404 Not FoundOrganizația nu a fost găsită
422 Unprocessable EntityDate invalide — răspuns JSON cu detalii eroare
500 Server ErrorEroare internă server

Modificare contact existent

PATCH /v1/contacts/update

Actualizează datele unui contact existent, identificat prin câmpul marca. Doar câmpurile trimise în body vor fi actualizate.

Request body

Content-Type: application/json — obiect Employee complet. Câmpurile marca și organizatie sunt obligatorii pentru identificare.

Exemplu:

{
  "nume": "Ion",
  "prenume": "Popescu",
  "email": "ion.popescu@exemplu.ro",
  "departament": "Finanțe",
  "codDepartament": "D163",
  "cor": "Referent bancar",
  "post": "Tesa",
  "marca": "M00212",
  "marcaSuperior": "M00132",
  "marcaSuperior2": "M0081",
  "marcaInlocuitor": "M00301",
  "adresa": "Str. Soarelui nr. 2",
  "localitate": "Brașov",
  "judet": "Brașov",
  "dataNasterii": "1981-08-24",
  "locatieFizica": "Office 101",
  "status": "activ",
  "organizatie": "demo-organization",
  "echipaPSI": "Nu"
}

Răspunsuri

CodDescriere
200 OKContactul a fost actualizat — returnează obiectul Employee
204 No ContentNicio modificare efectuată — datele trimise sunt identice cu cele existente
404 Not FoundContactul nu a fost găsit
422 Unprocessable EntityDate invalide — răspuns JSON cu detalii eroare
500 Server ErrorEroare internă server