Suodattaminen

Suodattaminen

Useimmat listaus-endpointit Fenerum API:ssa hyväksyvät query string -suodattimia tulosjoukon rajaamiseen. Kunkin endpointin tukemat tarkat suodattimet on listattu kyseisen endpointin viitesivun Parameters-osiossa — alla oleva kuvaus kattaa kaikille yhteiset käytännöt.

Täsmäytyssuodattimet

Suodata tietyn kentän tarkan arvon perusteella:

GET /api/v1/invoices/?status=open
GET /api/v1/accounts/?code=CUST001

Useita suodattimia voi yhdistää; ne yhdistetään AND-operaattorilla:

GET /api/v1/invoices/?status=due&collection_method=invoice

Vertailusuodattimet

Numeerisille ja päivämääräkentille Fenerum tarjoaa Django-tyyliset haku-päätteet:

PääteMerkitysEsimerkki
__ltPienempi kuinamount__lt=100
__ltePienempi tai yhtä suuricreated_date__lte=2025-12-31
__gtSuurempi kuinamount__gt=50
__gteSuurempi tai yhtä suuricreated_date__gte=2025-01-01

Päivämääräsuodattimet hyväksyvät ISO-päiväysmerkkijonot (YYYY-MM-DD).

Päivämääräalueen esimerkki

Hae laskut, jotka on luotu joulukuussa 2025:

GET /api/v1/invoices/?created_date__gte=2025-12-01&created_date__lt=2026-01-01

Kielteiset suodattimet

Muutamat endpointit tarjoavat _not-variantteja poisrajaaviin kyselyihin. Tarkista endpointin Parameters-osiosta, mitä on saatavilla — esimerkiksi Invoices:

GET /api/v1/invoices/?status_not=paid&account_not=CUST001

Yhdistäminen sivutukseen

Suodattimet säilyvät sivujen välillä — sivutetun vastauksen next/previous-URL:it kuljettavat suodatinparametrisi eteenpäin. Katso Pagination sivutusparametrien page/page_size osalta.

GET /api/v1/invoices/?account=CUST001&page=2&page_size=50

Vastauksen count-kenttä heijastaa suodatettujen tulosten kokonaismäärää, ei suodattamatonta kokonaismäärää.

Haku vaihtoehtoisella tunnisteella

Pieni joukko endpointeja (tällä hetkellä Plans ja Plan Terms) hyväksyy Lookup-Field HTTP-otsakkeen, joka muuttaa, miten URL-polun tunnistetta tulkitaan — hyödyllistä, kun sinulla ei ole UUID:ta, mutta tiedät resurssin ulkoisen code-arvon:

GET /api/v1/plans/enterprise/
Lookup-Field: code

Sallitut arvot on dokumentoitu kyseisissä endpointeissa (tyypillisesti uuid ja code).

Parhaat käytännöt

  • Suodata ennen sivutusta. Pienempien tulosjoukkojen hakeminen on nopeampaa ja kuluttaa vähemmän rajoitusta.
  • Käytä ISO-päivämääriä. Kaikki päivämääräkentät hyväksyvät muodon YYYY-MM-DD; jotkin hyväksyvät myös ISO-datetime-arvot (YYYY-MM-DDTHH:MM:SSZ).
  • Tarkista endpointin Parameters. Suodattimien nimet vaihtelevat resurssikohtaisesti — jokaisen operaation Parameters-osio listaa tarkalleen, mitä on saatavilla (etsi sinistä query-merkintää).
background logo

We invoice 2 billion DKK annually for our customers. Let's put your invoicing on autopilot today!