Modelele publicate, specificația și indexul de căutare sunt disponibile printr-un API public, doar pentru citire. Nu ai nevoie de cont sau de cheie: trimiți o cerere HTTP și primești JSON.
Adresa de bază
https://www.publicframework.com
Autentificare
Nu este necesară
Format
JSON, UTF-8
CORS
Permis de pe orice domeniu
Actualizare
Cel mult 5 minute
Primii pași
Pornește de la lista modelelor publicate. Fiecare intrare conține adresa de export, de unde descarci modelul complet: elemente, relații și viewuri.
1Cere lista modelelor de la /api/repository.
2Alege un model după slug și urmează links.export.
3Citește elementele și relațiile după formatul de schimb documentat.
Toate modelele publicate în repository, de la cel mai recent. Include numărul de elemente, relații și viewuri, precum și adresele de export și de pe site.
{
"format": "public-framework-exchange",
"formatVersion": 1,
"model": {
"id": "certificat-urbanism-demo",
"language": "ro",
"name": {
"ro": "Certificatul de urbanism (model demonstrativ)",
"en": "Urban planning certificate (demo model)"
},
"description": {
"ro": "Model demonstrativ al serviciului de eliberare a certificatului de urbanism într-o primărie de municipiu, de la temeiul legal până la sistemele informatice. Conține intenționat câteva erori de modelare pentru a ilustra validarea.",
"en": "Demo model of the urban planning certificate service in a city hall, from the legal basis to the information systems. It deliberately contains a few modelling errors to illustrate validation."
},
"scope": "Primăria Municipiului Exemplu",
"owner": "Echipa Public Framework",
"version": "0.3.0"
},
"elements": [
{
"id": "act-l50",
"type": "LegalAct",
"status": "approved",
"name": {
"ro": "Legea nr. 50/1991 privind autorizarea executării lucrărilor de construcții",
"en": "Law no. 50/1991 on authorising construction works"
},
"description": {
"ro": "Actul normativ care reglementează certificatul de urbanism și autorizația de construire.",
"en": "The legal act governing the urban planning certificate and the building permit."
},
"properties": {
"kind": "lege",
"number": "50",
"year": 1991,
"issuer": "Parlamentul României"
},
"sources": [
{
"kind": "legalAct",
"reference": "Legea nr. 50/1991, republicată",
"url": "https://legislatie.just.ro/"
}
]
}
],
"relationships": [
{
"id": "r1",
"type": "contains",
"source": "act-l50",
"target": "prov-l50-art6"
}
],
"views": [
{
"id": "v-service",
"name": {
"ro": "Serviciul pe scurt",
"en": "The service at a glance"
},
"viewpoint": "service",
"description": {
"ro": "De la evenimentul de viață la actul emis.",
"en": "From the life event to the issued act."
},
"nodes": [
"le-build",
"svc-cu"
]
}
]
}
Răspunsul are antetul Content-Disposition: attachment, așa că browserul îl descarcă. Clienții HTTP îl citesc normal.
Conținutul indexat al site-ului pentru o limbă: documentație, secțiuni, principii, articole, tutoriale și pagini. Este același index folosit de căutarea de pe site.
Indexul se reconstruiește cel mult o dată pe minut. Filtrează local după câmpurile title și text.
Formatul modelelor
Exportul folosește formatul de schimb public-framework-exchange. Pagina dedicată descrie fiecare câmp, regulile de validare și tipurile de elemente acceptate, cu un fișier de exemplu.
Răspunsurile JSON sunt păstrate în cache până la 5 minute. Datele noi apar după acest interval, fără să faci nimic.
Cache și erori
Cod
Înțeles
200
Cererea a reușit.
302
Fișierul specificației nu există pentru versiunea sau limba cerută.
304
Fișierul nu s-a schimbat față de ETag-ul trimis.
404
Modelul nu există sau nu este publicat ori limba nu este suportată.
502 / 503
Sursa datelor nu este disponibilă temporar. Reîncearcă mai târziu.
Nu există limite stricte de trafic, dar te rugăm să păstrezi local răspunsurile și să nu interoghezi API-ul mai des de o dată pe minut.
Versionare
Fiecare export include format și formatVersion. Câmpurile noi pot apărea oricând fără să schimbe versiunea, așa că ignoră câmpurile pe care nu le recunoști. O schimbare incompatibilă crește formatVersion și este anunțată în fluxul specificației.
Licență și atribuire
Modelele, specificația și documentația sunt publicate sub licențele deschise ale cadrului. Le poți folosi, inclusiv în produse comerciale, cu condiția să menționezi Public Framework ca sursă și să nu prezinți datele modificate ca fiind oficiale.