PHP SDK - Bulk Write API
Use the below code to upload a CSV file in ZIP format. The response contains the "file_id". Use this ID while making the bulk write request. For more details, refer to the Upload File page of our API guide.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id}, "fileUploadUrl" =>{fileUploadUrl});
ZCRMRestClient::initialize($configuration);
}
/** Upload File */
public static function uploadFile()
{
try
{
$write = ZCRMRestClient::getInstance()->getBulkWriteInstance();
$headers = array();
$headers["X-CRM-ORG"] = "673575"; // The unique ID (zgid) of your organization obtained through the Organization API
$headers["feature"] = "bulk-write";// To indicate that this a bulk write operation
$resp = $write->uploadFile("/Users/Desktop/filename.zip", $headers); // To give the zip file and headers you want to upload.
echo "HTTP Status Code:" . $resp->getHttpStatusCode()."\n"; // To get http response code
echo "Status:" . $resp->getStatus()."\n"; // To get response status
echo "Message:" . $resp->getMessage()."\n"; // To get response message
echo "Code:" . $resp->getCode()."\n"; // To get status code
echo "Details:" . json_encode($resp->getDetails())."\n";
echo "Response Json".json_encode($resp->getResponseJSON())."\n";
$attach = $resp->getData();
echo $attach->getId()."\n";// To get Id of the uploaded file.
echo $attach->getCreatedTime()."\n";
} catch (Exception $e)
{
var_dump($e);
}
}
}
$obj =new BulkWrite();
$obj->uploadFile();
Use the below code to create a bulk write job to insert records. The response contains the "job_id". Use this ID while making the bulk write request. For more details, refer to the Create a Bulk Write Job page of our API guide.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
/** Create Bulk Write Job */
/** Insert record */
public static function createBulkWriteJob()
{
$writeJob = ZCRMRestClient::getInstance()->getBulkWriteInstance();// To get ZCRMBulkWrite instance
$writeJob->setOperation("insert");//To set the type of operation you want to perform on the bulk write job.
$writeJob->setCharacterEncoding("UTF-8");
$callBackIns = ZCRMBulkCallBack::getInstance("https://www.zoho.com", "post");
$writeJob->setCallback($callBackIns);
$resourceIns = ZCRMBulkWriteResource::getInstance("ModulAPIName", "324555225"); //Specify the ModuleAPIName and the uploaded file Id.
$resourceIns->setType("data");// To set the type of module that you want to import. The value is data.
$resourceIns->setIgnoreEmpty(true);//True - Ignores the empty values.The default value is false.
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Last_Name");
$fieldMappings->setDefaultValue("value", "test");//To set the default value for an empty column in the uploaded file.
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Email", "0");//To get ZCRMBulkWriteFieldMapping instance using Field APIName and column index of the field in the uploaded file.
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Company", "1");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Phone", "2");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Website");
$fieldMappings->setDefaultValue("value", "https://www.zoho.com");
$resourceIns->setFieldMapping($fieldMappings);
$writeJob->setResource($resourceIns);// To set ZCRMBulkWriteFieldMapping instance
$response = $writeJob->createBulkWriteJob();// To create bulk write job.
echo "HTTP Status Code:" . $response->getHttpStatusCode()."\n"; // To get http response code
echo "Status:" . $response->getStatus()."\n"; // To get response status
echo "Message:" . $response->getMessage()."\n"; // To get response message
echo "Code:" . $response->getCode()."\n"; // To get status code
echo "Details:" . json_encode($response->getDetails())."\n";
echo "Response Json".json_encode($response->getResponseJSON())."\n";
$record = $response->getData();// To get ZCRMBulkWrite instance.
echo ($record->getJobId())."\n";// To get bulk write job Id.
$created_by = $record->getCreatedBy();
echo $created_by->getId()."\n";
echo $created_by->getName()."\n";
}
}
$obj =new BulkWrite();
$obj->createBulkWriteJob();
Use the below code to create a bulk write job to update records. The response contains the "job_id". Use this ID while making the bulk write request. This operation does not create new records when a match is not found in CRM. For more details, refer to the Create a Bulk Write Job page of our API guide.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
public static function updateBulkWriteJob()
{
$writeJob = ZCRMRestClient::getInstance()->getBulkWriteInstance();
$writeJob->setOperation("update");
$writeJob->setCharacterEncoding("UTF-8");
$callBackIns = ZCRMBulkCallBack::getInstance("https://www.zoho.com", "post");
$writeJob->setCallback($callBackIns);
$resourceIns = ZCRMBulkWriteResource::getInstance("ModulAPIName", "324555225"); // 324555225 file upload id
$resourceIns->setFindBy("Email");// To set a field as a unique field or ID of a record.
$resourceIns->setType("data");
$resourceIns->setIgnoreEmpty(true);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Last_Name", "0");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Email", "1");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Company", "2");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Phone", "3");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Contacts", "4");
$fieldMappings->setFindBy("Email");// To set a field as a unique field or ID of a record.
$resourceIns->setFieldMapping($fieldMappings);
$writeJob->setResource($resourceIns);
$response = $writeJob->createBulkWriteJob();
echo "HTTP Status Code:" . $response->getHttpStatusCode()."\n"; // To get http response code
echo "Status:" . $response->getStatus()."\n"; // To get response status
echo "Message:" . $response->getMessage()."\n"; // To get response message
echo "Code:" . $response->getCode()."\n"; // To get status code
echo "Details:" . json_encode($response->getDetails())."\n";
echo "Response Json".json_encode($response->getResponseJSON())."\n";
$record = $response->getData();
echo ($record->getJobId())."\n";
$created_by = $record->getCreatedBy();
echo $created_by->getId()."\n";
echo $created_by->getName()."\n";
}
}
$obj =new BulkWrite();
$obj->updateBulkWriteJob();
Use the below code to create a bulk write job to upsert records. The response contains the "job_id". Use this ID while making the bulk write request. This operation updates an existing record, and create new records, if it does not exist already. For more details, refer to the Create a Bulk Write Job page of our API guide.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
public static function upsertBulkWriteJob()
{
$writeJob = ZCRMRestClient::getInstance()->getBulkWriteInstance();
$writeJob->setOperation("upsert");
$writeJob->setCharacterEncoding("UTF-8");
$callBackIns = ZCRMBulkCallBack::getInstance("https://www.zoho.com", "post");
$writeJob->setCallback($callBackIns);
$resourceIns = ZCRMBulkWriteResource::getInstance("ModulAPIName", "324555225"); // 324555225 file upload id
$resourceIns->setFindBy("Email");
$resourceIns->setType("data");
$resourceIns->setIgnoreEmpty(true);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Last_Name", "0");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Email", "1");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Company", "2");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Phone", "3");
$resourceIns->setFieldMapping($fieldMappings);
$fieldMappings = ZCRMBulkWriteFieldMapping::getInstance("Contacts", "4");
$fieldMappings->setFindBy("Email");
$resourceIns->setFieldMapping($fieldMappings);
$writeJob->setResource($resourceIns);
$response = $writeJob->createBulkWriteJob();
echo "HTTP Status Code:" . $response->getHttpStatusCode()."\n"; // To get http response code
echo "Status:" . $response->getStatus()."\n"; // To get response status
echo "Message:" . $response->getMessage()."\n"; // To get response message
echo "Code:" . $response->getCode()."\n"; // To get status code
echo "Details:" . json_encode($response->getDetails())."\n";
echo "Response Json".json_encode($response->getResponseJSON())."\n";
$record = $response->getData();
echo ($record->getJobId())."\n";
$created_by = $record->getCreatedBy();
echo $created_by->getId()."\n";
echo $created_by->getName()."\n";
}
}
$obj =new BulkWrite();
$obj->upsertBulkWriteJob();
Use the below code to know the status of the bulk write job scheduled previously. For more details, refer to Get Job Details page of our API guide.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
public static function getBulkWriteJobDetails()
{
$writeJob = ZCRMRestClient::getInstance()->getBulkWriteInstance(null,"428376527"); // To get ZCRMBulkWrite instance using bulk write job Id.
$response = $writeJob->getBulkWriteJobDetails();// To get bulk write job details
echo "HTTP Status Code:" . $response->getHttpStatusCode()."\n"; // To get http response code
echo "Status:" . $response->getStatus()."\n"; // To get response status
echo "Message:" . $response->getMessage()."\n"; // To get response message
echo "Code:" . $response->getCode()."\n"; // To get status code
echo "Details:" . json_encode($response->getDetails())."\n";
echo "Response Json".json_encode($response->getResponseJSON())."\n\n\n";
$write = $response->getData();// To get ZCRMBulkWrite instance
echo $write->getStatus()."\n";// To get bulk read job status.
echo $write->getCharacterEncoding()."\n";
echo $write->getJobId()."\n";// To get bulk read job Id.
$callback = $write->getCallback();// To get ZCRMBulkCallBack instance
echo $callback->getUrl()."\n";
echo $callback->getMethod()."\n";
$result = $write->getResult();// To get ZCRMBulkResult instance
if($result != null)
{
echo $result->getDownloadUrl()."\n";//To get the download URL from which you can download the result(CSV file) of the bulk write job.
}
echo $write->getCreatedBy()->getId()."\n";
echo $write->getCreatedBy()->getName()."\n";
echo $write->getOperation()."\n";
echo $write->getCreatedTime()."\n";
foreach($write->getResources() as $resource)
{
echo $resource->getStatus()."\n";// To get the status of the bulk write job for that module.
echo $resource->getMessage()."\n";
echo $resource->getType()."\n";
echo $resource->getModuleAPIName()."\n";
echo $resource->getFindBy()."\n";
foreach($resource->getFieldMapping() as $fieldMapping)
{
echo $fieldMapping->getFieldAPIName()."\n";
echo $fieldMapping->getIndex()."\n";
echo $fieldMapping->getFindBy()."\n";
echo $fieldMapping->getFormat()."\n";
if($fieldMapping->getDefaultValue() != null )
{
foreach($fieldMapping->getDefaultValue() as $key=>$value)
{
echo $key." : ".$value."\n";
}
}
}
$file = $resource->getFileStatus();// To get ZCRMBulkWriteFileStatus instance
echo $file->getStatus()."\n";
echo $file->getFileName()."\n";// To get the name of the CSV file which will get downloaded.
echo $file->getAddedCount()."\n";
echo $file->getSkippedCount()."\n";
echo $file->getUpdatedCount()."\n";
echo $file->getTotalCount()."\n";
}
}
}
$obj =new BulkWrite();
$obj->getBulkWriteJobDetails();
Use the below code to download the result of the bulk write job. The response contains a zip file. Extract it to get the CSV file. For more details, refer to the Download Result page of our API guide.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
/** Download Bulk Write Result */
public static function downloadBulkWriteResult()
{
$write= ZCRMRestClient::getInstance()->getBulkWriteInstance();// To get ZCRMBulkWrite instance
$response = $write->downloadBulkWriteResult("https://download-accl.zoho.com/v2/crm/673045/bulk-write/3477061494004/347794004.zip");// Download bulk write result
$fp = fopen("/Users/Desktop/".$response->getFileName(), "w"); // $filePath - absolute path where downloaded file has to be stored.
echo "HTTP Status Code:" . $response->getHttpStatusCode();
echo "File Name:" . $response->getFileName();
$stream = $response->getFileContent();
// var_dump($stream);
fputs($fp, $stream);
fclose($fp);
}
}
$obj =new BulkWrite();
$obj->downloadBulkWriteResult();
Use the below code to download the zip file, extract the CSV file, and display the records as instances.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
/** Download the zip and Get list of record instances*/
public static function downloadANDGetRecords()
{
try
{
$recordIns = ZCRMRestClient::getInstance()->getBulkWriteInstance(null, "234244", "ModuleAPIName"); // 234244 bulk write job id
$fileResponse = $recordIns->downloadANDGetRecords("/Users/Desktop", "https://download-accl.zoho.com/v2/crm/673045/bulk-write/3477061494004/347794004.zip"); // To download the zip and get list of record instances.
while($fileResponse->hasNext())
{
$record = $fileResponse->next();
echo $record->getEntityId()."\n";
echo $record->getFieldValue("Company")."\n";
echo $record->getModuleAPIName()."\n";
$owner= $record->getOwner();
if($owner!=null)
{
echo $owner->getId()."\n";
}
echo $record->getStatus()."\n";
echo $record->getErrorMessage()."\n";
echo $record->getRecordRowNumber()."\n";
foreach($record->getData() as $key => $value)
{
echo "Key\t:".$key."\tValue:".$value."\n";
}
// $fileResponse->close(); // use this method close the file reader
}
}
catch (Exception $e)
{
print_r($e);
}
}
}
$obj =new BulkWrite();
$obj->downloadANDGetRecords();
Use the below code to fetch all the records from the file mentioned in the file path.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
public static function GetRecordsFromFile()
{
try
{
$recordIns = ZCRMRestClient::getInstance()->getBulkWriteInstance(null, null, "ModuleAPIName");
$fileResponse = $recordIns->getRecords("/Users/Desktop", "zip_file_name or csv_file_name");
while($fileResponse->hasNext())
{
$record = $fileResponse->next();
echo $record->getEntityId()."\n";
echo $record->getFieldValue("Company")."\n";
echo $record->getModuleAPIName()."\n";
$owner= $record->getOwner();
if($owner!=null)
{
echo $owner->getId()."\n";
}
echo $record->getStatus()."\n";
echo $record->getErrorMessage()."\n";
echo $record->getRecordRowNumber()."\n";
foreach($record->getData() as $key => $value)
{
echo "Key\t:".$key."\tValue:".$value."\n";
}
// $fileResponse->close();// use this method close the file reader
}
}
catch (Exception $e)
{
print_r($e);
}
}
}
$obj =new BulkWrite();
$obj->GetRecordsFromFile();
Use the below code to download the CSV from the zip file and fetch only the instances of records that failed getting inserted/updated/upserted.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
public static function downloadandGetFaildRecords()
{
try
{
$recordIns = ZCRMRestClient::getInstance()->getBulkWriteInstance(null, "234244", "ModuleAPIName"); // 234244 bulk write job id
$fileResponse = $recordIns->downloadANDGetFailedRecords("/Users/Desktop", "https://download-accl.zoho.com/v2/crm/673045/bulk-write/3477061494004/347794004.zip"); // File download url
while($fileResponse->hasNext())
{
$record = $fileResponse->next();
echo $record->getEntityId()."\n";
echo $record->getFieldValue("Company")."\n";
echo $record->getModuleAPIName()."\n";
$owner= $record->getOwner();
if($owner!=null)
{
echo $owner->getId()."\n";
}
echo $record->getStatus()."\n";
echo $record->getErrorMessage()."\n";
echo $record->getRecordRowNumber()."\n";
foreach($record->getData() as $key => $value)
{
echo "Key\t:".$key."\tValue:".$value."\n";
}
// $fileResponse->close();// use this method close the file reader
}
}
catch (Exception $e)
{
print_r($e);
}
}
}
$obj =new BulkWrite();
$obj->downloadandGetFaildRecords();
Use the below code to fetch the list of records that failed getting inserted/updated/upserted from the specified file.
<?php
use zcrmsdk\crm\setup\restclient\ZCRMRestClient;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCallBack;
use zcrmsdk\crm\bulkcrud\ZCRMBulkCriteria;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteFieldMapping;
use zcrmsdk\crm\bulkcrud\ZCRMBulkWriteResource;
use zcrmsdk\crm\utility\ZCRMConfigUtil;
require_once __DIR__ . '/vendor/autoload.php';
class BulkWrite
{
public function __construct()
{
$configuration = array("client_id"=>{client_id},"client_secret"=>{client_secret},"redirect_uri"=>{redirect_url},"currentUserEmail"=>{user_email_id});
ZCRMRestClient::initialize($configuration);
}
/** Get the list of failed record instances */
public static function listofFailedRecords()
{
try
{
$recordIns = ZCRMRestClient::getInstance()->getBulkWriteInstance(null, null, "ModuleAPIName");
$fileResponse = $recordIns->getFailedRecords("/Users/Desktop", "zip_file_name");
while($fileResponse->hasNext())
{
$record = $fileResponse->next();
echo $record->getEntityId()."\n";
echo $record->getFieldValue("Company")."\n";
echo $record->getModuleAPIName()."\n";
$owner= $record->getOwner();
if($owner!=null)
{
echo $owner->getId()."\n";
}
echo $record->getStatus()."\n";
echo $record->getErrorMessage()."\n";
echo $record->getRecordRowNumber()."\n";
foreach($record->getData() as $key => $value)
{
echo "Key\t:".$key."\tValue:".$value."\n";
}
// $fileResponse->close();// use this method close the file reader
}
}
catch (Exception $e)
{
print_r($e);
}
}
}
$obj =new BulkWrite();
$obj->getListofFailedRecords();