Formål og præcis afgrænsning
Læs den tildelte organisations bogførte posteringer. Listen læser organisationens eksisterende regnskabsdata, ikke kun det, appen selv har indsendt. Der returneres kun posteringslinjer på de konti, kunden har tildelt appen i sit grant.
Svaret indeholder ingen bank-, betalings-, afsender-bankkonto- eller Stripe-felter. Listen er en afgrænset læsning af bogførte posteringer, ikke en fuldstændig regnskabseksport: linjer på konti uden for grantet indgår ikke.
Før kaldet
Vælg den eksplicit konfigurerede installation. HOURS_BASE er enten dens /api/partner/sandbox/v1 eller /api/partner/v1. Basisadressen vises i App Console for appen. Et sandboxtoken begynder med hsk_; et produktions-access-token begynder med hat_. De er ikke indbyrdes udskiftelige og er ikke Supabase-login-tokens.
Produktion kræver en godkendt apprevision, en kundegrant og de relevante scopes. Kundegrantet er givet af organisationsejeren med tofaktor (aal2), gælder de valgte konti og varer højst 90 dage. Endelig journalbogføring kræver et særskilt mandat. Sandbox kræver en klargjort appgeneration i et separat projekt. En gyldig tokenform alene er ikke adgang.
Input og grænser
| Parameter | Betydning |
|---|---|
limit | 1–100; standard 50. |
after | Posteringsnummeret fra forrige side, som cifre i en streng (ikke en UUID). Udelades ved første side. |
from | Startdato, format YYYY-MM-DD. Valgfri. |
to | Slutdato, format YYYY-MM-DD. Valgfri. |
Ukendte og gentagne queryparametre afvises. Kaldet filtreres og autoriseres ud fra serverens gemte kontekst, ikke ud fra en valgfri klientheader med kunde-id.
Eksempel
Indstil HOURS_BASE og HOURS_TOKEN fra den aktive, autoriserede kontekst.
curl --silent --show-error --fail-with-body \
--request GET "$HOURS_BASE/journal?limit=50&from=2026-09-01&to=2026-09-30" \
--header "Authorization: Bearer $HOURS_TOKEN"Succes og output
Forvent HTTP 200 ved succes:
{
"data": [],
"has_more": false,
"next_after": null
}Når has_more er true, indeholder next_after posteringsnummeret som en streng med cifre. Send værdien som after i næste kald. Svaret giver ikke ekstra rettigheder eller en komplet kopi af den interne model.
Fejl og genforsøg
Manglende eller forkert miljøtoken afvises. Manglende scope, tilbagekaldt grant eller ændret apprevision stopper kaldet. En ugyldig dato eller cursor giver invalid_input, og en ukendt parameter giver unknown_query_parameter.
Ved midlertidig transportfejl kan det samme læsekald forsøges igen under aktuel adgang. Et rettighedsstop er ikke et tomt datasæt.
Læs ikke listen som en regnskabseksport
En revision af hele hovedbogen kræver alle relevante konti, perioder, korrektioner og adgangsregler. Listen viser kun linjer på de konti, kunden har tildelt. At listen slutter med has_more: false, betyder, at dette udsnit er gennemløbet, ikke at hele kundens regnskab er læst.
Gennemløb siden med limit og derefter next_after. Bevar samme autorisationskontekst i hele gennemløbet. Hvis adgang tilbagekaldes midt i forløbet, skal processen stoppe frem for at prøve en anden virksomheds token. Nye posteringer, der bogføres under en længere gennemlæsning, indgår ikke nødvendigvis i samme forløb.
Test din integration
Test korrekt kontekst, manglende scope, forkert miljø og fremmede referencer. Test tomt resultat, fuld side, næste side, datointervallet from og to og ændret adgang under gennemlæsningen.
Se rettigheder, fejl og pagination.