Profile Server API
Endpoints

Customers

CRUD de customers (clientes/empresas), raiz do multi-tenancy.

Clientes/empresas — raiz do multi-tenancy. Base path: /api/customers · autenticação de usuário.

MétodoRotaScopeResourceSucesso
POST/api/customerscreateresource:customers201
GET/api/customersreadresource:customers200
GET/api/customers/:idreadresource:customers_id200
PUT/api/customers/:idupdateresource:customers_id200
DELETE/api/customers/:iddeleteresource:customers_id204

Criar customer

POST /api/customers

Corpo

CampoTipoObrigatórioRegras
federalTaxIdstringsim11 a 14 caracteres, único
namestringsimmín. 1 caractere
aliasstringnãopode ser null
emailstringnãoe-mail válido ou null
phonestringnãopode ser null
logoPathstringnãopode ser null
activebooleannãopadrão true
curl -X POST http://localhost:3000/api/customers \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "federalTaxId": "12345678000199",
    "name": "Customer Exemplo",
    "alias": "exemplo",
    "email": "contato@exemplo.com",
    "phone": "11999999999",
    "active": true
  }'

201 Created

{
  "id": "c1b2c3d4-e5f6-4789-a123-456789abcdef",
  "federalTaxId": "12345678000199",
  "name": "Customer Exemplo",
  "alias": "exemplo",
  "email": "contato@exemplo.com",
  "phone": "11999999999",
  "active": true
}

409 Conflict — já existe um customer com esse federalTaxId.


Listar customers

GET /api/customers — lista paginada (page, limit). Envelope padrão de paginação.


Obter customer por id

GET /api/customers/:id404 se não existir.


Editar customer

PUT /api/customers/:id — atualização parcial.

CampoTipoRegras
namestringmín. 1 caractere
aliasstringou null
emailstringe-mail válido ou null
phonestringou null
logoPathstringou null
activeboolean

Retorna 200; 404 se não existir.


Remover customer

DELETE /api/customers/:id — retorna 204 No Content.