Salt la conținutul principal

API Information

URL de baza

/api/v1

Toate cererile API trebuie trimise catre acest URL

Versiune curenta

v1.0

API-ul foloseste versionare bazata pe URL

Limita de cereri

100/minut

Limita standard pentru toate endpoint-urile

Format raspuns

JSON

Toate raspunsurile sunt in format JSON

Ghid rapid de autentificare

Metoda 1: Header Authorization (Recomandat)

curl -X GET "https://your-domain.com/api/v1/clients?companyId=xxx" \
  -H "Authorization: Bearer fm_live_xxxxx" \
  -H "Content-Type: application/json"

Metoda 2: Header X-API-Key

curl -X GET "https://your-domain.com/api/v1/clients?companyId=xxx" \
  -H "X-API-Key: fm_live_xxxxx" \
  -H "Content-Type: application/json"

Tipuri de chei API

fm_live_Chei de productie - acces la date reale
fm_test_Chei de test - mediu sandbox

Genereaza o cheie API din Setari → API. Fiecare cheie poate avea scope-uri diferite: read, write, delete.

Ghid Webhooks

Evenimente disponibile

Facturi: invoice.created invoice.paid invoice.overdue
Cheltuieli: expense.created expense.approved
Clienti: client.created client.updated
Bugete: budget.exceeded budget.warning

Verificare semnatura webhook

const crypto = require('crypto');

// Obtine semnatura din header
const signature = req.headers['x-webhook-signature'];

// Calculeaza semnatura asteptata
const expected = 'sha256=' + crypto
  .createHmac('sha256', webhookSecret)
  .update(JSON.stringify(req.body))
  .digest('hex');

// Verifica (timing-safe)
const isValid = crypto.timingSafeEqual(
  Buffer.from(signature),
  Buffer.from(expected)
);

Structura payload webhook

{
  "event": "invoice.created",
  "timestamp": "2024-01-15T10:30:00.000Z",
  "companyId": "cm1xyz789ghi012",
  "data": {
    "invoice": {
      "id": "cm1inv123abc456",
      "series": "FACT",
      "number": 15,
      "totalAmount": 1190.00,
      "status": "draft"
    }
  }
}

Configureaza webhook-urile din Setari → Webhooks. Reincerarile sunt automate: 1 min, 5 min, 30 min, 2 ore, 24 ore.

Exemple de utilizare API

Sincronizare ERP

Sincronizeaza facturile si cheltuielile cu sistemul ERP existent.

GET /invoicesGET /expensesPOST /webhooks

Dashboard personalizat

Construieste un dashboard financiar personalizat pentru echipa.

GET /reports/{type}GET /expenses/summary

Automatizare facturare

Automatizeaza crearea facturilor din aplicatia ta.

POST /invoicesPOST /clientsPOST /invoices/{id}/send

Integrare e-commerce

Creeaza facturi automat la fiecare comanda.

POST /clientsPOST /invoicesPOST /revenues

Rapoarte automate

Genereaza rapoarte financiare programate.

GET /reports/profit-lossGET /reports/export

Alertare bugete

Primeste alerte cand bugetele sunt depasire.

POST /webhooks (budget.exceeded)GET /expenses/summary

Referinta coduri de eroare

Cod HTTPCod eroareDescriereSolutie
400VALIDATION_ERRORCerere invalida sau parametri lipsaVerifica parametrii cererii
401MISSING_API_KEYCheia API lipseste din cerereAdauga Authorization sau X-API-Key header
401INVALID_API_KEYCheia API este invalida sau expirataGenereaza o noua cheie API
403INSUFFICIENT_SCOPECheia nu are permisiunile necesareVerifica scope-urile cheii API
404NOT_FOUNDResursa nu a fost gasitaVerifica ID-ul resursei
429RATE_LIMITEDAi depasit limita de cereriAsteapta conform header-ului Retry-After
500INTERNAL_ERROREroare interna de serverContacteaza suportul

Referinta API interactiva

Exploreaza endpoint-urile API si testeaza-le direct din browser. Apasa pe "Authorize" pentru a introduce cheia ta API.

SDK-uri si biblioteci

JavaScript

In curand

Python

In curand

PHP

In curand

C#

In curand

Pana la lansarea SDK-urilor oficiale, poti folosi orice client HTTP sau biblioteci OpenAPI precum openapi-generator.