API — Export date
Export bulk al licitațiilor scorificate în format CSV sau JSON prin API-ul public SCOPO Intelligence v1.
API — Export date
Disponibil: plan Consultant · Autentificare: API Key
Exportul bulk îți permite să extragi date brute ale licitațiilor scorificate pentru analize BI, dashboarduri Excel sau pipeline-uri proprii de date.
Cost credite: 1 credit × număr de rânduri exportate
GET /api/v1/export/tenders
Request:
GET /api/v1/export/tenders?companyId={uuid}&from=2026-05-01&to=2026-06-18&format=json&limit=100
Authorization: Bearer scopo_<cheie>
Parametri de interogare:
| Parametru | Tip | Obligatoriu | Descriere |
|---|---|---|---|
companyId | string | ✓ | UUID — compania pentru care se exportă |
from | string | ✓ | Data de start YYYY-MM-DD |
to | string | ✓ | Data de sfârșit YYYY-MM-DD |
format | string | — | json (default) sau csv |
limit | integer | — | Rânduri per cerere (1–1000); default: 100 |
cursor | string | — | Cursor opac din meta.next_cursor (paginare) |
Restricții:
- Interval maxim: 90 de zile (
to - from ≤ 90) — 400DATE_RANGE_EXCEEDEDaltfel - Limită maximă: 1.000 rânduri per cerere — 400
LIMIT_EXCEEDEDaltfel
Răspuns JSON
{
"data": [
{
"tender_id": "uuid",
"title": "Servicii de mentenanță software pentru...",
"cpv_codes": ["72212000-4"],
"cpv_description": "Servicii de dezvoltare software pentru achiziții",
"contracting_authority": "Primăria Municipiului Focșani",
"authority_county": "Vrancea",
"deadline": "2026-08-15T23:59:59Z",
"estimated_value_ron": 450000,
"estimated_value_eur": 90400,
"publish_date": "2026-06-18T09:00:00Z",
"overall_score": 87,
"verdict": "GO",
"score_cpv": 85,
"score_semantic": 92,
"score_keyword": 78,
"score_value_fit": 80,
"score_historical": 65,
"price_benchmark_signal": "in_range",
"price_benchmark_median_eur": 128000,
"source_url": "https://sicap-prod.e-licitatie.ro/..."
}
],
"meta": {
"count": 100,
"next_cursor": "eyJsYXN0UHVibGlzaERhdGUiOiIyMDI2LTA2LTE4IiwibGFzdElkIjoidXVpZCJ9",
"has_more": true,
"exported_at": "2026-06-18T10:30:00Z",
"credits": {
"cost": 100,
"remaining": 1380,
"period_ends_at": "2026-07-01T00:00:00+03:00"
}
}
}
Câmpuri:
| Câmp | Tip | Descriere |
|---|---|---|
price_benchmark_signal | string? | below_market / in_range / above_market / null (Faza 1 Beta: mereu null) |
price_benchmark_median_eur | number? | Prețul median de referință EUR (null dacă indisponibil sau Faza 1 Beta) |
cpv_description | string? | Descrierea CPV în română (null în Faza 1 Beta) |
verdict | string | GO / RESEARCH / SKIP |
Răspuns CSV
GET /api/v1/export/tenders?...&format=csv
HTTP/1.1 200 OK
Content-Type: text/csv; charset=utf-8
Content-Disposition: attachment; filename="scopo-export-2026-06-18.csv"
Fișierul CSV respectă:
- Encoding UTF-8 cu BOM (
) — compatibil Excel cu diacritice românești - Separator:
,(virgulă) - Prima linie: header row cu toate câmpurile
Paginare cursor
# Primul export (100 rânduri)
curl "https://api.scopo.ro/api/v1/export/tenders?companyId=uuid&from=2026-05-01&to=2026-06-18&limit=100" \
-H "Authorization: Bearer scopo_..."
# Pagina următoare — folosește next_cursor
curl "https://api.scopo.ro/api/v1/export/tenders?companyId=uuid&from=2026-05-01&to=2026-06-18&limit=100&cursor=eyJsYXN..." \
-H "Authorization: Bearer scopo_..."
Cursorul este stabil față de licitații noi apărute în timp ce paginezi.
Export complet — exemplu Python
import requests
import csv
import io
API_KEY = "scopo_..."
BASE_URL = "https://api.scopo.ro/api/v1/export/tenders"
COMPANY_ID = "uuid-companie"
params = {
"companyId": COMPANY_ID,
"from": "2026-05-01",
"to": "2026-06-18",
"format": "json",
"limit": 1000,
}
all_rows = []
while True:
resp = requests.get(
BASE_URL,
headers={"Authorization": f"Bearer {API_KEY}"},
params=params
)
resp.raise_for_status()
data = resp.json()
all_rows.extend(data["data"])
if not data["meta"]["has_more"]:
break
params["cursor"] = data["meta"]["next_cursor"]
print(f"Total licitații exportate: {len(all_rows)}")
Rate limiting
| Limită | Valoare |
|---|---|
| Export | 20 / oră |
Erori frecvente
| Cod | Eroare | Cauză |
|---|---|---|
| 400 | DATE_RANGE_EXCEEDED | Intervalul to - from depășește 90 de zile |
| 400 | LIMIT_EXCEEDED | limit > 1000 |
| 401 | API_KEY_INVALID | Cheie lipsă sau invalidă |
| 403 | COMPANY_ACCESS_DENIED | companyId nu aparține tenant-ului |
| 403 | PLAN_UPGRADE_REQUIRED | Plan < Consultant |
| 429 | RATE_LIMIT_EXCEEDED | Depășit 20 req export/oră |
| 402 | API_CREDITS_EXHAUSTED | Credite insuficiente |
Vezi și
- Licitații API — acces la licitații individuale
- Credite API — model de consum
- Erori API — referință completă