PHP SDK Samples - Profile Operations
Get All Profiles
<?php
namespace com\zoho\crm\sample\profile;
use com\zoho\crm\api\profiles\APIException;
use com\zoho\crm\api\profiles\ProfilesOperations;
use com\zoho\crm\api\profiles\ResponseWrapper;
class Profile
{
/**
* Get Profiles
* This method is used to retrieve the data of profiles through an API request and print the response.
* @throws Exception
*/
public static function getProfiles()
{
//example
//moduleAPIName = "Leads";
//Get instance of ProfilesOperations Class
$profilesOperations = new ProfilesOperations();
//Call getProfiles method
$response = $profilesOperations->getProfiles();
if($response != null)
{
//Get the status code from response
echo("Status code " . $response->getStatusCode() . "\n");
if(in_array($response->getStatusCode(), array(204, 304)))
{
echo($response->getStatusCode() == 204? "No Content\n" : "Not Modified\n");
return;
}
//Get object from response
$responseHandler = $response->getObject();
if($responseHandler instanceof ResponseWrapper)
{
//Get the received ResponseWrapper instance
$responseWrapper = $responseHandler;
//Get the list of obtained Profile instances
$profiles = $responseWrapper->getProfiles();
foreach($profiles as $profile)
{
//Get the DisplayLabel of the each Profile
echo("Profile DisplayLabel: " . $profile->getDisplayLabel() . "\n");
if($profile->getCreatedTime() != null)
{
//Get the CreatedTime of each Profile
echo("Profile CreatedTime: ");
print_r($profile->getCreatedTime());
echo("\n");
}
if($profile->getModifiedTime() != null)
{
//Get the ModifiedTime of each Profile
echo("Profile ModifiedTime: ");
print_r($profile->getModifiedTime());
echo("\n");
}
//Get the Name of the each Profile
echo("Profile Name: " . $profile->getName() . "\n");
//Get the modifiedBy User instance of each Profile
$modifiedBy = $profile->getModifiedBy();
//Check if modifiedBy is not null
if($modifiedBy != null)
{
//Get the ID of the modifiedBy User
echo("Profile Modified By User-ID: " . $modifiedBy->getId() . "\n");
//Get the name of the modifiedBy User
echo("Profile Modified By User-Name: " . $modifiedBy->getName() . "\n");
//Get the Email of the modifiedBy User
echo("Profile Modified By User-Email: " . $modifiedBy->getEmail() . "\n");
}
//Get the Description of the each Profile
echo("Profile Description: " . $profile->getDescription() . "\n");
//Get the ID of the each Profile
echo("Profile ID: " . $profile->getId() . "\n");
//Get the Category of the each Profile
echo("Profile Category: " . $profile->getCategory() . "\n");
//Get the createdBy User instance of each Profile
$createdBy = $profile->getCreatedBy();
//Check if createdBy is not null
if($createdBy != null)
{
//Get the ID of the createdBy User
echo("Profile Created By User-ID: " . $createdBy->getId() . "\n");
//Get the name of the createdBy User
echo("Profile Created By User-Name: " . $createdBy->getName() . "\n");
//Get the Email of the createdBy User
echo("Profile Created By User-Email: " . $createdBy->getEmail() . "\n");
}
}
}
//Check if the request returned an exception
else if($responseHandler instanceof APIException)
{
//Get the received APIException instance
$exception = $responseHandler;
//Get the Status
echo("Status: " . $exception->getStatus()->getValue() . "\n");
//Get the Code
echo("Code: " . $exception->getCode()->getValue() . "\n");
echo("Details: " );
//Get the details map4
foreach($exception->getDetails() as $key => $value)
{
//Get each value in the map
echo($key . ": " .$value . "\n");
}
//Get the Message
echo("Message: " . $exception->getMessage()->getValue() . "\n");
}
}
}
}
Get Specific Profile
<?php
namespace com\zoho\crm\sample\profile;
use com\zoho\crm\api\profiles\APIException;
use com\zoho\crm\api\profiles\ProfilesOperations;
use com\zoho\crm\api\profiles\ResponseWrapper;
class Profile
{
/**
* Get Profile
* This method is used to get the details of any specific profile.
* Specify the unique id of the profile in your API request to get the data for that particular profile.
* @param profileId - The ID of the Profile to be obtained
* @throws Exception
*/
public static function getProfile(string $profileId)
{
//example
//moduleAPIName = "Leads";
//Get instance of ProfilesOperations Class
$profilesOperations = new ProfilesOperations();
//Call getProfile method that takes profileId as parameter
$response = $profilesOperations->getProfile($profileId);
if($response != null)
{
//Get the status code from response
echo("Status code " . $response->getStatusCode() . "\n");
if(in_array($response->getStatusCode(), array(204, 304)))
{
echo($response->getStatusCode() == 204? "No Content\n" : "Not Modified\n");
return;
}
//Get object from response
$responseHandler = $response->getObject();
if($responseHandler instanceof ResponseWrapper)
{
//Get the received ResponseWrapper instance
$responseWrapper = $responseHandler;
//Get the list of obtained Profile instances
$profiles = $responseWrapper->getProfiles();
foreach($profiles as $profile)
{
//Get the DisplayLabel of the each Profile
echo("Profile DisplayLabel: " . $profile->getDisplayLabel() . "\n");
if($profile->getCreatedTime() != null)
{
//Get the CreatedTime of each Profile
echo("Profile CreatedTime: ");
print_r($profile->getCreatedTime());
echo("\n");
}
if($profile->getModifiedTime() != null)
{
//Get the CreatedTime of each Profile
echo("Profile CreatedTime: ");
print_r($profile->getModifiedTime());
echo("\n");
}
//Get the permissionsDetails of each Profile
$permissionsDetails = $profile->getPermissionsDetails();
//Check if permissionsDetails is not null
if($permissionsDetails != null)
{
foreach($permissionsDetails as $permissionsDetail)
{
//Get the DisplayLabel of the each PermissionDetail
echo("Profile PermissionDetail DisplayLabel: " . $permissionsDetail->getDisplayLabel() . "\n");
//Get the Module of the each PermissionDetail
echo("Profile PermissionDetail Module: " . $permissionsDetail->getModule() . "\n");
//Get the Name of the each PermissionDetail
echo("Profile PermissionDetail Name: " . $permissionsDetail->getName() . "\n");
//Get the ID of the each PermissionDetail
echo("Profile PermissionDetail ID: " . $permissionsDetail->getId() . "\n");
//Get the Enabled of the each PermissionDetail
echo("Profile PermissionDetail Enabled: " . $permissionsDetail->getEnabled() . "\n");
}
}
//Get the Name of the each Profile
echo("Profile Name: " . $profile->getName() . "\n");
//Get the modifiedBy User instance of each Profile
$modifiedBy = $profile->getModifiedBy();
//Check if modifiedBy is not null
if($modifiedBy != null)
{
//Get the ID of the modifiedBy User
echo("Profile Modified By User-ID: " . $modifiedBy->getId() . "\n");
//Get the name of the modifiedBy User
echo("Profile Modified By User-Name: " . $modifiedBy->getName() . "\n");
//Get the Email of the modifiedBy User
echo("Profile Modified By User-Email: " . $modifiedBy->getEmail() . "\n");
}
//Get the Description of the each Profile
echo("Profile Description: " . $profile->getDescription() . "\n");
//Get the ID of the each Profile
echo("Profile ID: " . $profile->getId() . "\n");
//Get the Category of the each Profile
echo("Profile Category: " . $profile->getCategory() . "\n");
//Get the createdBy User instance of each Profile
$createdBy = $profile->getCreatedBy();
//Check if createdBy is not null
if($createdBy != null)
{
//Get the ID of the createdBy User
echo("Profile Created By User-ID: " . $createdBy->getId() . "\n");
//Get the name of the createdBy User
echo("Profile Created By User-Name: " . $createdBy->getName() . "\n");
//Get the Email of the createdBy User
echo("Profile Created By User-Email: " . $createdBy->getEmail() . "\n");
}
//Get the sections of each Profile
$sections = $profile->getSections();
//Check if sections is not null
if($sections != null)
{
foreach($sections as $section)
{
//Get the Name of the each Section
echo("Profile Section Name: " . $section->getName() . "\n");
//Get the categories of each Section
$categories = $section->getCategories();
foreach($categories as $category)
{
//Get the DisplayLabel of the each Category
echo("Profile Section Category DisplayLabel: " . $category->getDisplayLabel() . "\n");
//Get the permissionsDetails List of each Category
$categoryPermissionsDetails = $category->getPermissionsDetails();
//Check if categoryPermissionsDetails is not null
if($categoryPermissionsDetails != null)
{
foreach($categoryPermissionsDetails as $permissionsDetailID)
{
//Get the permissionsDetailID of the Category
echo("Profile Section Category permissionsDetailID: " . $permissionsDetailID . "\n");
}
}
//Get the Name of the each Category
echo("Profile Section Category Name: " . $category->getName() . "\n");
}
}
}
if($profile->getDelete() != null)
{
//Get the Delete of the each Profile
echo("Profile Delete: " . $profile->getDelete() . "\n");
}
if($profile->getDefault() != null)
{
//Get the Default of the each Profile
echo("Profile Default: " . $profile->getDefault() . "\n");
}
}
}
//Check if the request returned an exception
else if($responseHandler instanceof APIException)
{
//Get the received APIException instance
$exception = $responseHandler;
//Get the Status
echo("Status: " . $exception->getStatus()->getValue() . "\n");
//Get the Code
echo("Code: " . $exception->getCode()->getValue() . "\n");
echo("Details: " );
//Get the details map4
foreach($exception->getDetails() as $key => $value)
{
//Get each value in the map
echo($key . ": " .$value . "\n");
}
//Get the Message
echo("Message: " . $exception->getMessage()->getValue() . "\n");
}
}
}
}