API-pikaopas

Ensimmäinen API-kutsu 60 sekunnissa. 20 EU-tietolähdettä, yksi API-avain. Suunniteltu julkishallinnon tarpeisiin.

1. Aloitus

Kehitysympäristön asennus

# 1. Kloonaa repository ja asenna riippuvuudet
git clone <repo> && cd pauhu-stack
npm install

# 2. Aseta ympäristömuuttujat
cp .env.example .env
# Täytä:
#   VITE_API_URL=https://pauhu.eu
#   VITE_API_KEY=pk_...

# 3. Käynnistä kehityspalvelin
npm run dev

API-avaimen luominen

Luo API-avain osoitteessa pauhu.eu/keys/. Avaimet alkavat etuliitteellä pk_ ja ne tallennetaan SHA-256-tiivisteenä - Pauhu ei koskaan tallenna avainta selkokielisenä.

Kaksi tunnistautumistapaa

Välitä API-avain jommallakummalla otsikolla:

# Vaihtoehto 1: Bearer-tunniste
Authorization: Bearer pk_...

# Vaihtoehto 2: API-avain-otsikko
X-API-Key: pk_...

Ilmainen taso

Jokainen tili sisältää 3 ilmaista kyselyä päivässä ilman API-avainta (IP-pohjainen rajoitus). API-avaimen lisääminen avaa tilauksesi mukaisen kiintiön.

2. API-esimerkit

Kopioi ja liitä nämä esimerkit suoraan komentoriville. Kaikki päätepisteet palauttavat JSON-muotoisen vastauksen.

Hae EUR-Lex-lainsäädäntöä

GET /eurlex/all
curl "https://pauhu.eu/eurlex/all?lang=fi&limit=3"

Hakee EU-lainsäädäntöä suomeksi. Parametri lang määrittää kielen (24 EU-kieltä tuettu), limit rajoittaa tulosten määrää.

Hae TED-hankintailmoituksia

GET /eurlex/all?classification=ted
curl "https://pauhu.eu/eurlex/all?lang=fi&classification=ted&limit=3"

TED-hankintailmoitukset haetaan yhtenäisen hakurajapinnan kautta classification=ted -parametrillä.

IATE-termistöhaku

GET /iate/lookup
curl "https://pauhu.eu/iate/lookup?term=julkinen+hankinta&lang=fi"

Hakee termin "julkinen hankinta" virallisen EU-käännöksen kaikilla 24 kielellä IATE-termistöstä (2,4 miljoonaa termiä).

Käännä fi→en

POST /v1/translate
curl -X POST "https://pauhu.eu/v1/translate" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hankintayksikön on noudatettava avoimuusperiaatetta.","source_lang":"fi","target_lang":"en"}'

Kääntää tekstin suomesta englanniksi. Tukee 552 kieliparia.

Upotusvektorit (multilingual embeddings)

POST /v1/embeddings
curl -X POST "https://pauhu.eu/v1/embeddings" \
  -H "Content-Type: application/json" \
  -d '{"text":"julkiset hankinnat"}'

Luo upotusvektorin semanttista hakua varten. Monikielinen upotusmalli tukee kaikkia 24 EU-kieltä.

Keskustelu (SSE-virta)

POST /v1/chat
curl -N -X POST "https://pauhu.eu/v1/chat" \
  -H "Content-Type: application/json" \
  -d '{"query":"Mitkä ovat hankintaviranomaisen velvollisuudet tekoälyjärjestelmän käyttöönotossa?"}'

Lähteisiin perustuva vastaus Server-Sent Events -virtana. Vastaus sisältää viittaukset alkuperäisiin EU-lähteisiin.

Kaikki päätepisteet hyväksyvät valinnaisen Authorization-otsikon. Ilman sitä käytössä on ilmainen taso (3 kyselyä/päivä).

3. 20 tietolähdettä

Pauhu® yhdistää 20 EU-tietolähdettä yhteen rajapintaan. Kaikki data on Helsingin EU-palvelimilla, ja automaattinen synkronointi pitää tiedot ajantasaisina.

Tietolähde Kuvaus Esimerkkikysely
TED-hankintailmoitukset EU:n julkisten hankintojen ilmoitukset /eurlex/all?classification=ted&lang=fi
EUR-Lex-lainsäädäntö EU:n lainsäädäntö, asetukset ja direktiivit /eurlex/all?lang=fi&limit=5
IATE-termistö 2,4 miljoonaa EU-termiä 24 kielellä /iate/lookup?term=tekoäly&lang=fi
EU-tuomioistuimen oikeuskäytäntö Unionin tuomioistuimen ratkaisut /eurlex/all?classification=curia&lang=fi
Kansallinen lainsäädäntö 28 EU-maan kansalliset lait /eurlex/all?classification=lex&lang=fi
Eurooppa-neuvoston asiakirjat Neuvoston päätelmät ja pöytäkirjat /eurlex/all?classification=consilium&lang=fi
Euroopan komission asiakirjat Komission tiedonannot ja päätökset /eurlex/all?classification=commission&lang=fi
Euroopan parlamentin asiakirjat Parlamentin päätöslauselmat /eurlex/all?classification=europarl&lang=fi
Lainsäädäntömenettelyn seuranta EU-lainsäädännön eteneminen /eurlex/all?classification=oeil&lang=fi
ECHA-kemikaalitiedot Kemikaalien rekisteröinti ja arviointi /eurlex/all?classification=echa&lang=fi
EMA-lääketiedot Lääkkeiden myyntiluvat /eurlex/all?classification=ema&lang=fi
EPO-patenttitiedot Euroopan patenttiviraston julkaisut /eurlex/all?classification=epo&lang=fi
CORDIS-tutkimushankkeet EU:n rahoittamat tutkimusprojektit /eurlex/all?classification=cordis&lang=fi
Digitaaliset tuotepassit ESPR 2024/1781 -tuotetiedot /eurlex/all?classification=dpp&lang=fi
EKP:n julkaisut Euroopan keskuspankin raportit /eurlex/all?classification=ecb&lang=fi
Eurostat-tilastot EU:n viralliset tilastot /eurlex/all?classification=eurostat&lang=fi
EU:n julkaisutoimisto Viralliset EU-julkaisut /eurlex/all?classification=publications&lang=fi
Data Europa EU:n avoin data -portaali /eurlex/all?classification=dataeuropa&lang=fi
EU:n organisaatiohakemisto EU-toimielinten henkilöhakemisto /eurlex/all?classification=whoiswho&lang=fi
Wikipedia-viitetiedot Täydentävä taustatietolähde /eurlex/all?classification=wiki&lang=fi

4. Turvallisuus

Pauhu® noudattaa teollisuusautomaation tietoturvastandardia ja toteuttaa vyöhykepohjaisen turvallisuusarkkitehtuurin, jossa data kulkee valvottujen porttien läpi.

Teollisuusturvallisuus

Vyöhykepohjainen turvallisuusarkkitehtuuri. Suojatut, valvotut ja ulkoiset vyöhykkeet eriytetty.

GDPR Art. 25 ja Art. 32

Sisäänrakennettu tietosuoja (Privacy by Design) ja käsittelyn turvallisuus. Tietosuojavastaava: dpo@pauhu.ai.

Selainpohjainen päättely

AI-päättely tapahtuu käyttäjän selaimessa optimoitujen mallien ja GPU acceleration:n avulla. Kyselyt eivät poistu laitteelta - palvelin tarjoaa vain pisteytetyn korpuksen.

EU-infrastruktuuri

Kaikki infrastruktuuri sijaitsee Helsingissä EU-alueella. Ei kolmansien maiden tiedonsiirtoa. Kaikki tietokannat ja tallennustilat EU-lainkäyttöalueella.

Kvanttiturvallinen avaimenvaihto

X25519Kyber768-avaimenvaihto suojaa dataa myös tulevaisuuden kvanttitietokoneilta. Ed25519-allekirjoitukset mallien eheyden varmistamiseksi.

Auditoitavuus

Kaikki järjestelmätapahtumat kirjataan auditointilokiin (FR6). Toimintoloki mahdollistaa pyynnön elinkaaren seurannan viranomaistarkastusta varten.

5. eForms ja julkiset hankinnat

Pauhu tarjoaa suoran pääsyn TED-hankintailmoituksiin eForms SDK 1.14 -muodossa. Tämä on erityisen hyödyllinen julkishallinnon hankintatoimelle.

Hankintailmoitusten haku

# Kaikki hankintailmoitukset suomeksi
curl "https://pauhu.eu/eurlex/all?classification=ted&lang=fi&limit=10"

# ICT-hankinnat yli 140 000 EUR (CPV 72000000)
curl "https://pauhu.eu/eurlex/all?classification=ted&lang=fi&q=CPV+72000000"

# Tekoälyyn liittyvät tarjouspyynnöt
curl "https://pauhu.eu/eurlex/all?classification=ted&lang=fi&q=tekoäly+artificial+intelligence"

eForms BT-kentät

Vastaukset sisältävät eForms-rakenteen mukaiset BT-kentät (Business Term):

BT-21 Title BT-23 Main Nature BT-27 Estimated Value BT-262 CPV Code

CPV-koodien (Common Procurement Vocabulary) avulla voit suodattaa hankintailmoituksia toimialoittain:

CPV-koodiKuvausEsimerkki
72000000IT-palvelutTietojärjestelmien kehitys ja ylläpito
48000000OhjelmistotuotteetValmisohjelmistot ja lisenssit
64200000TietoliikennepalvelutVerkko- ja viestintäpalvelut
79530000KäännöspalvelutAsiakirjojen käännös ja lokalisointi

Esimerkkikysely: Traficomin päivittäinen hankintaseuranta

# Hae uusimmat ICT-hankinnat
curl "https://pauhu.eu/eurlex/all?classification=ted&lang=fi&q=CPV+72000000&limit=5"

# Hae tekoälyjärjestelmien hankinnat
curl "https://pauhu.eu/eurlex/all?classification=ted&lang=fi&q=artificial+intelligence+AI+system&limit=5"

eForms SDK 1.14 -yhteensopivat vastaukset. BT-kenttien täydellinen dokumentaatio: eForms-kenttäopas.

6. Käännökset ja termistö

translation model: 552 kieliparia

Pauhu käyttää avoimen lähdekoodin käännösmalleja, jotka tukevat 552 kieliparia. Käännökset noudattavat ISO 18587 -standardin mukaista 10-vaiheista käännöskaskadia:

  1. TM - Käännösmuistihaku (Translation Memory)
  2. PRE-EDIT - Esikäsittely ja normalisointi
  3. TB - Termistötarkistus (IATE-termistö)
  4. DNT - Kääntämättömät termit (Do Not Translate)
  5. QA-RULES - Laatusäännöt ennen käännöstä
  6. DOMAIN-CLASSIFY - Toimialaluokitus (EuroVoc)
  7. NMT - Neurokonekäännös (translation model)
  8. POST-EDIT - Jälkikäsittely
  9. TM-WRITE - Käännösmuistiin tallennus
  10. QA - Lopullinen laadunvarmistus

Käännösesimerkki

# Käännä suomesta englanniksi
curl -X POST "https://pauhu.eu/v1/translate" \
  -H "Content-Type: application/json" \
  -d '{"text":"Julkinen hankinta on toteutettava syrjimättömästi.","source_lang":"fi","target_lang":"en"}'

# Käännä suomesta ruotsiksi
curl -X POST "https://pauhu.eu/v1/translate" \
  -H "Content-Type: application/json" \
  -d '{"text":"Julkinen hankinta on toteutettava syrjimättömästi.","source_lang":"fi","target_lang":"sv"}'

IATE-termistö: 2,4 miljoonaa termiä

IATE (Inter-Active Terminology for Europe) on EU:n virallinen termistötietokanta. Hae termin viralliset käännökset kaikilla 24 EU-kielellä:

# Hae termi "julkinen hankinta" kaikilla kielillä
curl "https://pauhu.eu/iate/lookup?term=julkinen+hankinta&lang=fi"

# Hae englanninkielinen termi
curl "https://pauhu.eu/iate/lookup?term=public+procurement&lang=en"

# Hae ruotsinkielinen termi
curl "https://pauhu.eu/iate/lookup?term=offentlig+upphandling&lang=sv"

Termistöhaku palauttaa kaikki kielet, toimialat ja luotettavuustasot. Chat-käyttöliittymässä käännökset sisältävät automaattisesti IATE-termistötarkistuksen.

Seuraavat askeleet

Kysyttävää? Ota yhteyttä osoitteeseen api@pauhu.eu tai hallinnoi API-avaimiasi API-hallintapaneelissa.