Skip to main content
The last_checked parameter is DocketLayer’s change detection mechanism. Supply it on any query and the response includes a delta block containing every new filing since that timestamp. Without it, the response contains case context only — no delta block is returned.

How it works

If filings have occurred since that timestamp:
If nothing has changed:

Managing last_checked correctly

Always use meta.queried_at as your next last_checked. Do not use the current system time or the timestamp of the latest filing.
Using meta.queried_at ensures:
  • No gap between queries — you never miss a filing that occurred while your code was running
  • No clock skew — the server’s timestamp is authoritative
  • Correct timezone handling — queried_at is always ISO-8601 with a timezone offset

Timestamp format

last_checked must be an ISO-8601 timestamp with a timezone offset. A bare date or a timestamp without offset is rejected with 400.
A last_checked value in the future is also rejected with 400.

Filing type filtering

Use filing_types to narrow the delta to specific event categories:
Only order and judgment entries appear in new_filings. Other filings are not returned in the delta, but the case context is always returned in full regardless of the filter. Common filing type values: complaint, motion, order, judgment, notice, stipulation, hearing, brief, subpoena, settlement.

First query — no last_checked

On your first query for a case, omit last_checked. You receive the case context with no delta block. Store meta.queried_at and use it as last_checked on every subsequent query.

delta vs. docket_history

delta.new_filings and case.docket_history (in context=full) are different things: For a monitoring loop, the delta is what you need. docket_history is for initial intake or full review.