---
title: "Count users matching filters"
method: POST
path: "/api/raw/users/count"
---

# Count users matching filters

`POST /api/raw/users/count`

Count users in the database matching filters. Counts are capped at minimum (10k) and maximum (1M). Requires RAW service. Credits: 1 per request.

## Request body

- CountUsersRequest
  - `filters` union, required
    - object — Filters to apply (required)
      - `field` string, required — Field name to filter on
      - `op` 'Eq' | 'NotEq' | 'In' | 'NotIn' | 'Lt' | 'Lte' | 'Gt' | 'Gte' | 'Glob' | 'NotGlob' | 'IGlob' | 'NotIGlob' | 'Regex' | 'Contains' | 'NotContains' | 'ContainsAny' | 'NotContainsAny' | 'AnyLt' | 'AnyLte' | 'AnyGt' | 'AnyGte' | 'ContainsAllTokens', required — Filter operator
      - `value` union, required — Filter value (type depends on field and operator)
        - string
        - number
        - string[]
        - number[]
    - object — Filters to apply (required)
      - `op` 'And' | 'Or', required — Composite operator
      - `filters` object[], required — Array of field filters
        - `field` string, required — Field name to filter on
        - `op` 'Eq' | 'NotEq' | 'In' | 'NotIn' | 'Lt' | 'Lte' | 'Gt' | 'Gte' | 'Glob' | 'NotGlob' | 'IGlob' | 'NotIGlob' | 'Regex' | 'Contains' | 'NotContains' | 'ContainsAny' | 'NotContainsAny' | 'AnyLt' | 'AnyLte' | 'AnyGt' | 'AnyGte' | 'ContainsAllTokens', required — Filter operator
        - `value` union, required — Filter value (type depends on field and operator)
          - string
          - number
          - string[]
          - number[]
    - object — Filters to apply (required)
      - `op` 'And' | 'Or', required — Composite operator
      - `filters` union[], required — Array of filters
        - union
          - object
            - `field` string, required — Field name to filter on
            - `op` 'Eq' | 'NotEq' | 'In' | 'NotIn' | 'Lt' | 'Lte' | 'Gt' | 'Gte' | 'Glob' | 'NotGlob' | 'IGlob' | 'NotIGlob' | 'Regex' | 'Contains' | 'NotContains' | 'ContainsAny' | 'NotContainsAny' | 'AnyLt' | 'AnyLte' | 'AnyGt' | 'AnyGte' | 'ContainsAllTokens', required — Filter operator
            - `value` union, required — Filter value (type depends on field and operator)
              - …
          - object
            - `op` 'And' | 'Or', required — Composite operator
            - `filters` object[], required — Array of field filters
              - …

## Response `200`

Count retrieved successfully

- CountResponse
  - `count` integer, required — Number of matching records (may be capped or floored)
  - `truncated` boolean — True if count was capped at maximum or floored at minimum

## Other responses

- `400` — Bad request - filters required
- `401` — Unauthorized - API key missing
- `403` — Forbidden - Invalid API key or RAW service access denied
- `429` — Too Many Requests - Hourly credit limit exceeded

## Changes

- **2026-01-23** `800dc7d25374` — 1 breaking, 1 info
  - removed `subschema #1, subschema #2, subschema #3, subschema #4, subschema #5, subschema #6, subschema #7, subschema #8, subschema #9, subschema #10, subschema #11, subschema #12, subschema #13, subschema #14, subschema #15, subschema #16, subschema #17, subschema #18, subschema #19, subschema #20, subschema #21, subschema #22, subschema #23, subschema #24, subschema #25, subschema #26, subschema #27, subschema #28, subschema #29, subschema #30, subschema #31, subschema #32, subschema #33, subschema #34, subschema #35, subschema #36, subschema #37, subschema #38, subschema #39, subschema #40, subschema #41, subschema #42, subschema #43, subschema #44, subschema #45, subschema #46, subschema #47, subschema #48, subschema #49, subschema #50, subschema #51, subschema #52, subschema #53, subschema #54, subschema #55, subschema #56, subschema #57, subschema #58, subschema #59, subschema #60, subschema #61, subschema #62, subschema #63, subschema #64, subschema #65, subschema #66, subschema #67, subschema #68, subschema #69, subschema #70, subschema #71, subschema #72, subschema #73, subschema #74, subschema #75, subschema #76, subschema #77, subschema #78, subschema #79, subschema #80, subschema #81, subschema #82, subschema #83, subschema #84, subschema #85, subschema #86, subschema #87, subschema #88, subschema #89, subschema #90, subschema #91, subschema #92, subschema #93, subschema #94, subschema #95, subschema #96, subschema #97, subschema #98, subschema #99, subschema #100, subschema #101, subschema #102, subschema #103, subschema #104, subschema #105, subschema #106, subschema #107, subschema #108, subschema #109, subschema #110, subschema #111, subschema #112, subschema #113, subschema #114, subschema #115, subschema #116, subschema #117, subschema #118, subschema #119, subschema #120, subschema #121, subschema #122, subschema #123, subschema #124, subschema #125, subschema #126, subschema #127, subschema #128, subschema #129, subschema #130, subschema #131, subschema #132, subschema #133, subschema #134, subschema #135, subschema #136, subschema #137, subschema #138, subschema #139, subschema #140, subschema #141` from the `filters/allOf[#/components/schemas/UserFilter]/` request property `anyOf` list
  - added `subschema #1, subschema #2, subschema #3` to the `filters/allOf[#/components/schemas/UserFilter]/` request property `anyOf` list
- …earlier changes not shown

[Full history](https://skmtc.dev/bountylaboratories/apis/bounty-lab-public-api/changes/api/raw/users/count/post.md)

---

[API](https://skmtc.dev/bountylaboratories/apis/bounty-lab-public-api.md) · [All operations](https://skmtc.dev/bountylaboratories/apis/bounty-lab-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bountylaboratories/apis/bounty-lab-public-api/revisions/4664c27f7e3a?raw)
