--- title: "Crear trabajo de lectura masiva" url: https://docs.catalyst.zoho.com/es/api/code-reference/cloud-scale/data-store/bulk-read-rows/create-bulk-read-job/ description: "Esta API activa la operación de lectura masiva para obtener registros de una tabla en Data Store de forma masiva" last_updated: 2026-03-20T16:21:56Z service: Cloud Scale type: api --- # Lectura masiva de registros La operación de lectura masiva puede leer miles de registros de una tabla específica en [Data Store](https://docs.catalyst.zoho.com/es/cloud-scale/help/data-store/introduction) y generar un archivo CSV con los resultados de la operación de lectura, si el trabajo se ejecuta correctamente. Esta operación intensiva en datos se puede realizar en una sola ejecución de API. Catalyst admite tres APIs para la operación de lectura masiva: una API para crear la lectura masiva, una [API para verificar el estado de la lectura masiva](https://docs.catalyst.zoho.com/es/api/code-reference/cloud-scale/data-store/bulk-read-rows/create-bulk-read-job/#CheckBulkReadStatus) para comprobar el estado de la ejecución del trabajo manualmente, y una [API para descargar el resultado de la lectura masiva](https://docs.catalyst.zoho.com/es/api/code-reference/cloud-scale/data-store/bulk-read-rows/create-bulk-read-job/#DownloadBulkReadResult) para descargar los resultados. También puedes configurar una URL de callback para habilitar la publicación automática de las respuestas de estado del trabajo en ella. > **Nota:** También puedes realizar la operación de lectura masiva usando Catalyst CLI. Consulta la [documentación de CLI para importación y exportación de Data Store](https://docs.catalyst.zoho.com/es/cli/v1/data-store-import-and-export/introduction/). # Crear un trabajo de lectura masiva ### Descripción Esta API activa la operación de lectura masiva para obtener los registros de la tabla en Data Store que coincidan con los criterios que especifiques en el JSON de entrada. La tabla se identifica usando su ID de tabla único o el nombre de la tabla. ### Detalles de la solicitud #### URL de solicitud `POST` {api-domain}/baas/v1/project/{projectId}/bulk/read - **api-domain** (URL): El dominio específico del DC para acceder a Catalyst API - **project_id** (Numerical): El [ID único](https://docs.catalyst.zoho.com/es/getting-started/set-up-a-catalyst-project/general-settings/) del proyecto #### Encabezados de solicitud **Authorization:** Zoho-oauthtoken {oauth_token} **Encabezados opcionales** **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.tables.bulk.READ #### Propiedades del JSON de solicitud La entrada para la solicitud de la API de lectura masiva debe enviarse en formato JSON. Los parámetros de la solicitud se explican a continuación. - **table_identifier** (string, mandatory): El [ID único](https://docs.catalyst.zoho.com/es/cloud-scale/help/data-store/tables/#create-a-new-table) de la tabla o el nombre de la tabla. Puedes obtener el ID de la tabla desde Data Store o desde la URL cuando la tabla está abierta en la consola. - **query** (json, optional): La sección donde puedes definir las condiciones y criterios para el trabajo de lectura masiva - - **page** (numerical, optional): El archivo CSV generado como resultado del proceso de lectura masiva contiene doscientos mil registros en una página. El valor de página '1' indica que los primeros doscientos mil registros que coincidan con tu consulta serán exportados. Puedes obtener registros subsiguientes aumentando el valor de página. Por ejemplo, si deseas obtener registros del rango 200,001 a 400,000, debes especificar el valor de página como '2'. Valor predeterminado: 1 - - **select_columns** (array, optional): Columnas específicas en los registros que necesitan obtenerse de la tabla. Si no especificas las columnas, se seleccionarán y obtendrán todas las columnas. Puedes incluir múltiples columnas en un array. Consulta la ventana de código de la solicitud de ejemplo. - **criteria** (json, optional): Un conjunto de condiciones en base a las cuales se obtendrán los registros - - **group_operator** (string, mandatory (if specifying criteria)): El operador que vinculará los grupos de criterios entre sí. Operadores compatibles: `AND`, `OR` Si defines dos o más grupos de criterios, puedes usar el operador `AND` o `OR` en tu solicitud. Por ejemplo, puedes especificar un criterio como "column1 equal value 1 AND column2 contains value 2" en el formato especificado en la sección anterior. > **Nota:** No podrás usar combinaciones de ambos operadores en una sola solicitud de API. Puedes usar `AND` o `OR` en una solicitud. - **group** (json, mandatory (if specifying criteria)): Puedes incluir hasta 25 conjuntos de criterios en esta sección. El ejemplo muestra 3 conjuntos de criterios. > **Nota:** Solo puedes incluir un grupo general con un operador de grupo en una sola solicitud de API. - - **column_name** (string, mandatory (if specifying criteria)): Nombre de la columna específica de la tabla para la cual se debe definir el criterio - - **comparator** (string, mandatory (if specifying criteria)): El operador de comparación que coincide el nombre de la columna con el valor del criterio Comparadores compatibles: `equal`, `not_equal`, `greater_than`, `greater_equal`, `less_than`, `less_equal`, `starts_with`, `ends_with`, `contains`, `not_contains`, `in`, `not_in`, `between`, `not_between` > **Nota:** * Puedes especificar múltiples valores para los comparadores in y not_in, separados por comas. * Catalyst solo admite el comparador equal para una columna cifrada. No podrás usar otros comparadores como criterio para una columna cifrada. - - **value** (string, mandatory (if specifying criteria)): El valor para la columna específica en el registro que necesitas definir como criterio - **callback** (json, optional): La sección donde puedes definir las propiedades de la URL de callback, donde se enviarán las respuestas JSON automáticas de los estados del trabajo - - **url** (string, mandatory (if specifying callback)): La URL donde se enviarán las respuestas automáticas usando el método HTTP POST, cada vez que cambie el estado del trabajo. La información sobre los detalles del trabajo estará contenida en el cuerpo de la respuesta JSON. Si no configuras una URL de callback, debes verificar manualmente el estado del procesamiento del trabajo cuando lo necesites, usando la [API para verificar el estado de la lectura masiva](https://docs.catalyst.zoho.com/es/api/code-reference/cloud-scale/data-store/bulk-read-rows/check-bulk-read-status/#CheckBulkReadStatus). - - **headers** (string, optional): Encabezados que necesitas que se pasen en la respuesta JSON a la URL de callback. Debes especificar los encabezados como: *{* *"{header_name_1}" : "{header_value_1}",* *"{header_name_2}" : "{header_value_2}"* *}* y así sucesivamente. Consulta el código de la solicitud de ejemplo. - - **params** (string, optional): Parámetros que necesitas que se añadan a la URL de callback Debes especificar los parámetros como: *{* *"{param_name_1}" : "{param_value_1}",* *"{param_name_2}" : "{param_value_2}"* *}* y así sucesivamente. Consulta el código de la solicitud de ejemplo. ### Detalles de la respuesta Hay tres estados de procesamiento del trabajo que generarán tres respuestas diferentes: * **In-Progress:** Cuando ejecutas la API, Catalyst te enviará inmediata y automáticamente una respuesta indicando que la ejecución del trabajo está en progreso. Si configuraste una URL de callback en la solicitud, la respuesta también se publicará en la URL en el formato que definiste. La respuesta contendrá un parámetro `job_id` que puedes usar para [verificar el estado de la ejecución del trabajo](https://docs.catalyst.zoho.com/es/api/code-reference/cloud-scale/data-store/bulk-read-rows/create-bulk-read-job/#CheckBulkReadStatus) en respuestas subsiguientes, si no configuraste una URL de callback. * **Success:** La respuesta del estado exitoso contendrá una URL de descarga, donde puedes [descargar un archivo CSV](https://docs.catalyst.zoho.com/es/api/code-reference/cloud-scale/data-store/bulk-read-rows/check-bulk-read-status/#DownloadBulkReadResult) que contiene los registros que coinciden con tu consulta. Si no configuraste una URL de callback, esta respuesta no será enviada por Catalyst automáticamente. * **Failed:** La respuesta del estado fallido contendrá una descripción del error ocurrido y los detalles. Si no configuraste una URL de callback, esta respuesta no será enviada por Catalyst automáticamente. **Sample Request** ```bash curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/bulk/read \ -H "Authorization: Zoho-oauthtoken 1000.910***************************16.2f****************************57" \ -d '{ "table_identifier": "EmpDetails", "query" : { "page" : "1", "select_columns" : [ "EmpID", "EmpName", "Department" ], "criteria": { "group_operator": "or", "group": [ { "column_name": "Department", "comparator": "equal", "value": "Marketing" } , { "column_name": "EmpID", "comparator": "greater_than", "value": "1000" } , { "column_name": "EmpName", "comparator": "starts_with", "value": "S" } ] } }, "callback" : { "url" : "https://hr.zylker.com/es/EmpRecords/_callback.php", "headers" : { "src" : "ZCatalyst", "operation" : "bulkreadAPI" }, "params" : { "project_name" : "EmployeeDatabase" } } }' ``` **Sample Response: Job in Progress** ```json { "status": "success", "data": { "job_id": 2000000118004, "status": "In-Progress", "operation": "read", "project_details": { "project_name": "ShipmentTracking", "id": 4000000006007 }, "query": [ { "table_id": 3376000000165541, "details": { "page": "1" } } ], "callback": { "url": "https://hr.zylker.com/es/EmpRecords/_callback.php", "headers": { "src" : "ZCatalyst", "operation" : "bulkreadAPI" }, "params": { "project_name" : "EmployeeDatabase" } }, "created_by": { "zuid": 1019540152, "is_confirmed": true, "email_id": "emma@zylker.com", "first_name": "Amelia", "last_name": "Burrows", "user_id": 671930409 }, "created_time": "Oct 06, 2020 07:06 PM" } } ``` **Sample Response: Job Successful** ```json { "status": "success", "data": { "job_id": 2000000118004, "status": "In-Progress", "operation": "read", "project_details": { "project_name": "ShipmentTracking", "id": 4000000006007 }, "query": [ { "table_id": 3376000000165541, "details": { "page": "1" } } ], "callback": { "url": "https://hr.zylker.com/es/EmpRecords/_callback.php", "headers": { "src" : "ZCatalyst", "operation" : "bulkreadAPI" }, "params": { "project_name" : "EmployeeDatabase" } }, "created_by": { "zuid": 1019540152, "is_confirmed": true, "email_id": "emma@zylker.com", "first_name": "Amelia", "last_name": "Burrows", "user_id": 671930409 }, "created_time": "Oct 06, 2020 07:06 PM" } } ``` **Sample Response: Job Failed** ```json { "status": "success", "data": { "job_id": 2000000117007, "status": "Failed", "operation": "read", "project_details": { "project_name": "ShipmentTracking", "id": 4000000006007 }, "query": [ { "table_id": 3376000000165541, "details": { "page": "1" } } ], "callback": { "url": "https://hr.zylker.com/es/EmpRecords/_callback.php", "headers": { "src" : "ZCatalyst", "operation" : "bulkreadAPI" }, "params": { "project_name" : "EmployeeDatabase" } }, "created_by": { "zuid": 1019540152, "is_confirmed": true, "email_id": "emma@zylker.com", "first_name": "Amelia", "last_name": "Burrows", "user_id": 671930409 }, "created_time": "Oct 06, 2020 07:00 PM", "results": { "description": "The column ID in select_columns is invalid", } } } ```