HubSpot · Schema

SearchRequest

A search request for CRM objects. Filter groups are combined with OR logic; filters within a group are combined with AND logic.

AnalyticsCommerceContentCRMCustomer ServiceEmail MarketingMarketingMarketing AutomationSales

Properties

Name Type Description
filterGroups array An array of filter groups. Records matching any filter group will be included in results (OR logic between groups). Filters within a group are all required (AND logic within groups).
sorts array An array of sort criteria to order the results.
query string A full-text search query string. When provided, returns records where any searchable property contains the query term.
properties array An array of property names to include in the response for each record. If not specified, a default set of properties is returned.
limit integer The maximum number of results to return. Maximum value is 200.
after string The cursor token for pagination. Use the value from the previous response's paging.next.after to get the next page of results.
View JSON Schema on GitHub

JSON Schema

hubspot-crm-search-search-request-schema.json Raw ↑
{
  "type": "object",
  "description": "A search request for CRM objects. Filter groups are combined with OR logic; filters within a group are combined with AND logic.",
  "properties": {
    "filterGroups": {
      "type": "array",
      "description": "An array of filter groups. Records matching any filter group will be included in results (OR logic between groups). Filters within a group are all required (AND logic within groups).",
      "example": [
        {
          "filters": [
            {}
          ]
        }
      ],
      "items": {
        "type": "object",
        "description": "A group of filter conditions combined with AND logic. Use multiple filter groups to create OR conditions between groups.",
        "properties": {
          "filters": {
            "type": "array",
            "description": "An array of filters, all of which must match (AND logic).",
            "example": [
              {
                "propertyName": "Example Record",
                "operator": "EQ",
                "value": "example-value",
                "highValue": "example-value",
                "values": [
                  {}
                ]
              }
            ],
            "items": {
              "type": "object",
              "description": "A single filter condition for a CRM object property.",
              "properties": {
                "propertyName": {
                  "type": "string",
                  "description": "The name of the CRM property to filter on.",
                  "example": "Example Record"
                },
                "operator": {
                  "type": "string",
                  "description": "The comparison operator for the filter.",
                  "example": "EQ",
                  "enum": [
                    "EQ",
                    "NEQ",
                    "LT",
                    "LTE",
                    "GT",
                    "GTE",
                    "BETWEEN",
                    "IN",
                    "NOT_IN",
                    "HAS_PROPERTY",
                    "NOT_HAS_PROPERTY",
                    "CONTAINS_TOKEN",
                    "NOT_CONTAINS_TOKEN"
                  ]
                },
                "value": {
                  "type": "string",
                  "description": "The value to compare against. Not required for HAS_PROPERTY and NOT_HAS_PROPERTY operators.",
                  "example": "example-value"
                },
                "highValue": {
                  "type": "string",
                  "description": "The upper bound value for BETWEEN operator comparisons.",
                  "example": "example-value"
                },
                "values": {
                  "type": "array",
                  "description": "An array of values for IN and NOT_IN operator comparisons.",
                  "example": [
                    "example-value"
                  ],
                  "items": {
                    "type": "object"
                  }
                }
              },
              "required": [
                "propertyName",
                "operator"
              ]
            }
          }
        }
      }
    },
    "sorts": {
      "type": "array",
      "description": "An array of sort criteria to order the results.",
      "example": [
        {
          "propertyName": "Example Record",
          "direction": "ASCENDING"
        }
      ],
      "items": {
        "type": "object",
        "description": "A sort criterion for ordering search results.",
        "properties": {
          "propertyName": {
            "type": "string",
            "description": "The name of the CRM property to sort by.",
            "example": "Example Record"
          },
          "direction": {
            "type": "string",
            "description": "The sort direction.",
            "example": "ASCENDING",
            "enum": [
              "ASCENDING",
              "DESCENDING"
            ]
          }
        },
        "required": [
          "propertyName"
        ]
      }
    },
    "query": {
      "type": "string",
      "description": "A full-text search query string. When provided, returns records where any searchable property contains the query term.",
      "example": "example-value"
    },
    "properties": {
      "type": "array",
      "description": "An array of property names to include in the response for each record. If not specified, a default set of properties is returned.",
      "example": [
        "example-value"
      ],
      "items": {
        "type": "string"
      }
    },
    "limit": {
      "type": "integer",
      "description": "The maximum number of results to return. Maximum value is 200.",
      "example": 10
    },
    "after": {
      "type": "string",
      "description": "The cursor token for pagination. Use the value from the previous response's paging.next.after to get the next page of results.",
      "example": "example-value"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "SearchRequest"
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/hubspot-crm-search-search-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.