API Migration Notes

Some listing, search and update endpoints will stop returning full items on December 1, 2026. The options that request full items from them are deprecated now and will be removed then. Until then they keep working as before.

Deprecated options:

To migrate, list or search for summaries or IDs instead, then request each item you need individually. Requests for a single item still return the full item, and the /api/3 base URL and API keys stay the same. Each of those requests counts against your rate limits, so request only the items you need.

How a removed option is rejected

Starting December 1, 2026, a request that sets full, fullBill or detail to true on these endpoints is rejected with HTTP 400, for every caller. Omitting the option, or setting it to false, is still accepted. fullTextFormat is not rejected, but it has no effect without full bills.

The rejection is an error response with errorCode 1 that names the parameter, and its message links to the section of this page for that option:

{
  "success": false,
  "message": "Bill search and listing no longer return full bills. Omit full for bill summaries, ...",
  "responseType": "error",
  "errorCode": 1,
  "errorData": {
    "parameterConstraint": {
      "name": "full",
      "type": "boolean",
      "constraint": "Must be false or omitted on bill search and listing. Migration guide: ..."
    },
    "receivedValue": "true"
  },
  "errorDataType": "invalid-parameter"
}

Bill update feeds

fullBill is deprecated on these endpoints, along with fullTextFormat, which only applies to full bills:

  • /api/3/bills/updates

  • /api/3/bills/updates/{fromDateTime}

  • /api/3/bills/updates/{fromDateTime}/{toDateTime}

Starting December 1, 2026, they reject fullBill with HTTP 400 whenever it is true, even when detail=true or summary=true is also set. fullBill counts as true when its value is true, 1, yes, on, y or t, in any case.

How to migrate

Each update token already identifies its bill in id. Choose one of these instead of fullBill:

  • Add summary=true to include a bill summary with each update token, under item. A summary has the bill’s identifiers, title, sponsor and type, but not its status, actions, amendments or votes.

  • Request each updated bill you need from /api/3/bills/{sessionYear}/{printNo}, using session and basePrintNo from the token’s id. It returns the full bill by default.

Each of those bill requests counts against your rate limits.

Bills updated during a time range, with a summary of each bill:

GET /api/3/bills/updates/2019-02-13T08:00:00/2019-02-13T10:55:48?summary=true

summary=true and detail=true (with any filter) keep working as before.