Skip to content

Zoho: Get records from a specified module

Zoho record.getRecords: arguments, response, policy and SDK examples.

← Record operations · Get started

Operation zoho.getrecords

Provider route: GET /crm/v8/{module}. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/zoho with npm, or alter-sdk-zoho with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { ZohoIntegration } from "@alter-ai/zoho";
async function execute(input: Parameters<ZohoIntegration["record"]["getRecords"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new ZohoIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.record.getRecords(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_zoho import ZohoIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = ZohoIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.record.get_records(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.modulestringRequired within parentMaximum length: 25
queryobjectRequired within parentAdditional keys: not allowed
query.fieldsstringRequired within parent
query.territory_idstringOptionalFormat: int64
query.idsarrayOptionalMinimum items: 1
Unique items: true
query.ids[]stringEach itemUnique record ID in int64 string format.
Format: int64
query.cvidstringOptionalFormat: int64
query.filtersModelOptionalExpand Related Records — request body — query filters
query.cross_filtersModelOptionalExpand Get records from a specified module — request body — query cross filters
query.filterIdstringOptionalThe filter identifier
Format: int64
Maximum length: 20
query.per_pageintegerOptionalFormat: int32
Maximum: 200
Minimum: 1
query.pageintegerOptionalFormat: int32
Minimum: 1
query.page_tokenstringOptionalMaximum length: 96
query.sort_orderstringOptionalOne of: desc, asc
query.sort_bystringOptionalOne of: id, Created_Time, Modified_Time
query.convertedstringOptionalOne of: false, true, both
query.include_childbooleanOptional

Referenced models: Get records from a specified module — request body — query cross filters, Related Records — request body — query filters

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$JSONRoot
$ (anyOf 1)ModelAlternativeExpand Get records from a specified module — response body — data, info
$ (anyOf 2)nullAlternative

Referenced models: Get records from a specified module — response body — data, info

16 more schemas are linked from the tables above, on the schema pages.

Get records from a specified module — request body — query cross filters
FieldTypePresenceDescription and constraints
$arrayRootRepresents a list of cross-filter objects that filter Custom View records based on related module records' criteria.
Maximum items: 3
Minimum items: 0
$[]objectEach itemRepresents a single cross-filter object that filters records based on the presence or absence of related module records matching the specified criteria.
Additional keys: not allowed
$[].criteriaModelRequired within parentExpand Related Records — request body — query filters
$[].include_objectsbooleanRequired within parentIndicates whether records with matching related records are included in the results.
$[].relationModelRequired within parentExpand Get records from a specified module — request body — query cross filters item relation

Referenced models: Get records from a specified module — request body — query cross filters item relation, Related Records — request body — query filters

Related Records — request body — query filters
FieldTypePresenceDescription and constraints
$JSONRootRepresents the top-level filter criterion for data selection, supporting both simple field-based filters and complex grouped filters with logical operators.
$ (anyOf 1)ModelAlternativeExpand Related Records — request body — query filters value
$ (anyOf 2)ModelAlternativeExpand Related Records — request body — query / filters / group_operator: AND, OR, and, or

Referenced models: Related Records — request body — query / filters / group_operator: AND, OR, and, or, Related Records — request body — query filters value

Get records from a specified module — response body — data, info
FieldTypePresenceDescription and constraints
$objectRootRepresents the response schema for the record GET success operation.
Additional keys: not allowed
dataarrayRequired within parentRepresents the data value.
Maximum items: 100
Minimum items: 1
data[]ModelEach itemExpand Get a record by ID from a specified module — response body — data data item
infoobjectRequired within parentRepresents the info value.
Additional keys: not allowed
info.callbooleanOptionalRepresents the info value.
info.countJSONRequired within parent
info.count (anyOf 1)integerAlternativeRepresents the info value.
Format: int32
info.count (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
info.emailbooleanOptionalRepresents the info value.
info.more_recordsbooleanRequired within parentRepresents the info value.
info.next_page_tokenJSONRequired within parent
info.next_page_token (anyOf 1)stringAlternativeRepresents the info value.
Maximum length: 500
info.next_page_token (anyOf 2)nullAlternativeRepresents the info value.
Maximum length: 500
info.pageJSONRequired within parent
info.page (anyOf 1)integerAlternativeRepresents the info value.
Format: int32
info.page (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
info.page_token_expiryJSONRequired within parent
info.page_token_expiry (anyOf 1)stringAlternativeRepresents the info value.
Format: date-time
info.page_token_expiry (anyOf 2)nullAlternativeRepresents the info value.
Format: date-time
info.per_pageJSONRequired within parent
info.per_page (anyOf 1)integerAlternativeRepresents the info value.
Format: int32
info.per_page (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
info.previous_page_tokenJSONRequired within parent
info.previous_page_token (anyOf 1)stringAlternativeRepresents the info value.
Maximum length: 500
info.previous_page_token (anyOf 2)nullAlternativeRepresents the info value.
Maximum length: 500
info.sort_bystringRequired within parentRepresents the info value.
Maximum length: 255
info.sort_orderstringRequired within parentRepresents the info value.
Known values: asc, desc

Referenced models: Get a record by ID from a specified module — response body — data data item

Get records from a specified module — request body — query cross filters item relation
FieldTypePresenceDescription and constraints
$objectRootRepresents the reference to a child relationship module. The api_name property is required to identify the child relationship.
Additional keys: not allowed
$disruptedbooleanOptionalIndicates whether the related module relationship referenced by this criterion is in a disrupted state, typically due to an unresolvable or deleted relationship definition.
api_namestringRequired within parentRepresents the API name of the child relationship module used to identify the relationship.
Maximum length: 255
idstringOptionalRepresents the unique ID of the child relationship module record.
Format: int64
Maximum length: 25
Related Records — request body — query / filters / group_operator: AND, OR, and, or
FieldTypePresenceDescription and constraints
$objectRootRepresents a grouped filter criterion containing multiple filter conditions evaluated with a logical operator. Supports recursive nesting for complex filtering logic.
Additional keys: not allowed
grouparrayRequired within parentContains an array of filter conditions grouped together and evaluated with the specified logical operator.
Maximum items: 25
Minimum items: 2
group[]JSONEach item
group[] (anyOf 1)ModelAlternativeExpand Related Records — request body — query filters value
group[] (anyOf 2)ModelAlternativeExpand Related Records — request body — query / filters / group_operator: AND, OR, and, or
group_operatorstringRequired within parentRepresents the logical operator applied between the filter conditions in the group.
Possible values:
AND - All conditions in the group must be satisfied.
OR - At least one condition in the group must be satisfied.
and - Equivalent to AND; all conditions in the group must be satisfied.
or - Equivalent to OR; at least one condition in the group must be satisfied.
One of: AND, OR, and, or

Referenced models: Related Records — request body — query / filters / group_operator: AND, OR, and, or, Related Records — request body — query filters value

Get a record by ID from a specified module — response body — data data item
FieldTypePresenceDescription and constraints
$objectRootRepresents a single record GET data result item.
Additional keys: allowed
$statestringOptionalThis will be as Save or Draft. 'save' indicates the record is not in any active Blueprint
Maximum length: 255
$wizard_connection_pathJSONOptional
$wizard_connection_path (anyOf 1)stringAlternative$wizard_connection_path information denoted by comma separated connection ids between wizard screens.
Maximum length: 2000
Read only: false
$wizard_connection_path (anyOf 2)nullAlternative$wizard_connection_path information denoted by comma separated connection ids between wizard screens.
Maximum length: 2000
Read only: false
Created_ByModelOptionalExpand Get a record by ID from a specified module — response body — data data item Created By
Created_TimestringOptionalRepresents the timestamp when the record was originally created.
Format: date-time
Modified_ByModelOptionalExpand Get a record by ID from a specified module — response body — data data item Modified By
Modified_TimestringOptionalRepresents the timestamp when the record was last modified.
Format: date-time
OwnerobjectOptionalRepresents the owner value.
Additional keys: not allowed
Owner.emailstringOptionalRepresents the owner value.
Maximum length: 256
Owner.idstringRequired within parentRepresents the owner value.
Format: int64
Owner.namestringRequired within parentRepresents the owner value.
Maximum length: 101
WizardobjectOptionalRepresents the wizard value.
Additional keys: not allowed
Wizard.idstringRequired within parentRepresents the wizard value.
Format: int64
Maximum length: 19
idstringOptionalRepresents the unique identifier of the RecordGETDataItem record.
Format: int64

Referenced models: Get a record by ID from a specified module — response body — data data item Created By, Get a record by ID from a specified module — response body — data data item Modified By

SDK function policy ID: zoho.getrecords. Catalog operation: getRecords. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

No-content response statuses: [204]

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.