Filtering
Gridify syntax for filtering, sorting, and combining conditions on list endpoints.
List endpoints accept filter and orderBy query parameters using Gridify syntax. The operators and examples below apply uniformly to paged endpoints on the API.
Operators
| Operator | Meaning | Example |
|---|---|---|
= | Equals | status=Issued |
!= | Not equals | status!=Expired |
=* | Contains | name=*Roofing* |
^ | Starts with | licenseNumber^BC |
$ | Ends with | name$LLC |
> < >= <= | Comparison | expirationDate>2025-01-01 |
, | AND | city=Minneapolis,status=Issued |
| | OR | status=Revoked|status=Suspended |
/i | Case-insensitive | name=*roofing/i |
Examples
Active contractors in Minneapolis:
filter=city=Minneapolis,status=IssuedEnforcement actions with penalties over $10k, newest first:
filter=penaltyAmount>10000&orderBy=orderDate descOSHA inspections with willful violations at roofing companies:
filter=establishmentName=*Roofing*,willfulViolations>0Sorting
orderBy takes a field name with optional asc or desc:
orderBy=expirationDate descChain sorts with commas:
orderBy=status asc,expirationDate descPagination
Paged endpoints accept page and pageSize. Defaults are page 1 at 25 records; the maximum pageSize is 100. The response envelope carries totalCount and totalPages.