Java SDK Samples - Notes Operations
package com.zoho.crm.sample.notes;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.zoho.crm.api.HeaderMap;
import com.zoho.crm.api.ParameterMap;
import com.zoho.crm.api.attachments.Attachment;
import com.zoho.crm.api.notes.APIException;
import com.zoho.crm.api.notes.ActionHandler;
import com.zoho.crm.api.notes.ActionResponse;
import com.zoho.crm.api.notes.ActionWrapper;
import com.zoho.crm.api.notes.BodyWrapper;
import com.zoho.crm.api.notes.Info;
import com.zoho.crm.api.notes.NotesOperations;
import com.zoho.crm.api.notes.NotesOperations.DeleteNotesParam;
import com.zoho.crm.api.notes.NotesOperations.GetNotesHeader;
import com.zoho.crm.api.notes.NotesOperations.GetNotesParam;
import com.zoho.crm.api.notes.ResponseHandler;
import com.zoho.crm.api.notes.ResponseWrapper;
import com.zoho.crm.api.notes.SuccessResponse;
import com.zoho.crm.api.record.Record;
import com.zoho.crm.api.util.APIResponse;
import com.zoho.crm.api.util.Model;
public class Note
{
/**
* Get Notes
* This method is used to get the list of notes and print the response.
* @throws Exception
*/
public static void getNotes() throws Exception
{
//Get instance of NotesOperations Class
NotesOperations notesOperations = new NotesOperations();
//Get instance of ParameterMap Class
ParameterMap paramInstance = new ParameterMap();
paramInstance.add(GetNotesParam.PAGE,1);
//paramInstance.add(GetNotesParam.PER_PAGE,1);
//Get instance of HeaderMap Class
HeaderMap headerInstance = new HeaderMap();
OffsetDateTime startdatetime = OffsetDateTime.of(2019, 06, 01, 10, 00, 01, 00, ZoneOffset.of("+05:30"));
headerInstance.add(GetNotesHeader.IF_MODIFIED_SINCE, startdatetime);
//Call getNotes method that takes paramInstance and headerInstance as parameters
APIResponse<ResponseHandler> response = notesOperations.getNotes(paramInstance, headerInstance);
if(response != null)
{
//Get the status code from response
System.out.println("Status Code: " + response.getStatusCode());
if(Arrays.asList(204,304).contains(response.getStatusCode()))
{
System.out.println(response.getStatusCode() == 204? "No Content" : "Not Modified");
return;
}
//Check if expected response is received
if(response.isExpected())
{
//Get object from response
ResponseHandler responseHandler = response.getObject();
if(responseHandler instanceof ResponseWrapper)
{
//Get the received ResponseWrapper instance
ResponseWrapper responseWrapper = (ResponseWrapper) responseHandler;
//Get the list of obtained Note instances
List<com.zoho.crm.api.notes.Note> notes = responseWrapper.getData();
for(com.zoho.crm.api.notes.Note note : notes)
{
//Get the owner User instance of each Note
com.zoho.crm.api.users.User owner = note.getOwner();
//Check if owner is not null
if(owner != null)
{
//Get the name of the owner User
System.out.println("Note Owner User-Name: " + owner.getName());
//Get the ID of the owner User
System.out.println("Note Owner User-ID: " + owner.getId());
//Get the Email of the owner User
System.out.println("Note Owner Email: " + owner.getEmail());
}
//Get the ModifiedTime of each Module
System.out.println("Note ModifiedTime: " + note.getModifiedTime());
//Get the list of Attachment instance each Note
List<Attachment> attachments = note.getAttachments();
//Check if attachments is not null
if(attachments != null)
{
for(Attachment attachment : attachments)
{
printAttachment(attachment);
}
}
//Get the CreatedTime of each Note
System.out.println("Note CreatedTime: " + note.getCreatedTime());
//Get the parentId Record instance of each Note
Record parentId = note.getParentId();
//Check if parentId is not null
if(parentId != null)
{
if(parentId.getKeyValue("name") != null)
{
//Get the parent record Name of each Note
System.out.println("Note parent record Name: " + parentId.getKeyValue("name"));
}
//Get the parent record ID of each Note
System.out.println("Note parent record ID: " + parentId.getId());
}
//Get the Editable of each Note
System.out.println("Note Editable: " + note.getEditable().toString());
//Get the SeModule of each Note
System.out.println("Note SeModule: " + note.getSeModule());
//Get the IsSharedToClient of each Note
System.out.println("Note IsSharedToClient: " + note.getIsSharedToClient().toString());
//Get the modifiedBy User instance of each Note
com.zoho.crm.api.users.User modifiedBy = note.getModifiedBy();
//Check if modifiedBy is not null
if(modifiedBy != null)
{
//Get the Name of the modifiedBy User
System.out.println("Note Modified By User-Name: " + modifiedBy.getName());
//Get the ID of the modifiedBy User
System.out.println("Note Modified By User-ID: " + modifiedBy.getId());
//Get the Email of the modifiedBy User
System.out.println("Note Modified By User-Email: " + modifiedBy.getEmail());
}
//Get the Size of each Note
System.out.println("Note Size: " + note.getSize());
//Get the State of each Note
System.out.println("Note State: " + note.getState());
//Get the VoiceNote of each Note
System.out.println("Note VoiceNote: " + note.getVoiceNote().toString());
//Get the Id of each Note
System.out.println("Note Id: " + note.getId());
//Get the createdBy User instance of each Note
com.zoho.crm.api.users.User createdBy = note.getCreatedBy();
//Check if createdBy is not null
if(createdBy != null)
{
//Get the Name of the createdBy User
System.out.println("Note Created By User-Name: " + createdBy.getName());
//Get the ID of the createdBy User
System.out.println("Note Created By User-ID: " + createdBy.getId());
//Get the Email of the createdBy User
System.out.println("Note Created By User-Email: " + createdBy.getEmail());
}
//Get the NoteTitle of each Note
System.out.println("Note NoteTitle: " + note.getNoteTitle());
//Get the NoteContent of each Note
System.out.println("Note NoteContent: " + note.getNoteContent());
}
//Get the Object obtained Info instance
Info info = responseWrapper.getInfo();
if(info != null)
{
if(info.getPerPage() != null)
{
//Get the PerPage of the Info
System.out.println("Note Info PerPage: " + info.getPerPage().toString());
}
if(info.getCount() != null)
{
//Get the Count of the Info
System.out.println("Note Info Count: " + info.getCount().toString());
}
if(info.getPage() != null)
{
//Get the Default of the Info
System.out.println("Note Info Page: " + info.getPage());
}
if(info.getMoreRecords() != null)
{
//Get the Default of the Info
System.out.println("Note Info MoreRecords: " + info.getMoreRecords().toString());
}
}
}
//Check if the request returned an exception
else if(responseHandler instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) responseHandler;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
else
{//If response is not as expected
//Get model object from response
Model responseObject = response.getModel();
//Get the response object's class
Class<? extends Model> clas = responseObject.getClass();
//Get all declared fields of the response class
Field[] fields = clas.getDeclaredFields();
for(Field field : fields)
{
//Get each value
System.out.println(field.getName() + ":" + field.get(responseObject));
}
}
}
}
private static void printAttachment(Attachment attachment)
{
//Get the Owner User instance of each attachment
com.zoho.crm.api.users.User owner = attachment.getOwner();
//Check if owner is not null
if(owner != null)
{
//Get the Name of the Owner
System.out.println("Note Attachment Owner User-Name: " + owner.getName());
//Get the ID of the Owner
System.out.println("Note Attachment Owner User-ID: " + owner.getId());
//Get the Email of the Owner
System.out.println("Note Attachment Owner User-Email: " + owner.getEmail());
}
//Get the modified time of each attachment
System.out.println("Note Attachment Modified Time: " + attachment.getModifiedTime().toString());
//Get the name of the File
System.out.println("Note Attachment File Name: " + attachment.getFileName());
//Get the created time of each attachment
System.out.println("Note Attachment Created Time: " + attachment.getCreatedTime().toString());
//Get the Attachment file size
System.out.println("Note Attachment File Size: " + attachment.getSize().toString());
//Get the parentId Record instance of each attachment
Record parentId = attachment.getParentId();
//Check if parentId is not null
if(parentId != null)
{
//Get the parent record Name of each attachment
System.out.println("Note Attachment parent record Name: " + parentId.getKeyValue("name"));
//Get the parent record ID of each attachment
System.out.println("Note Attachment parent record ID: " + parentId.getId());
}
//Get the attachment is Editable
System.out.println("Note Attachment is Editable: " + attachment.getEditable().toString());
//Get the file ID of each attachment
System.out.println("Note Attachment File ID: " + attachment.getFileId());
//Get the type of each attachment
System.out.println("Note Attachment File Type: " + attachment.getType());
//Get the seModule of each attachment
System.out.println("Note Attachment seModule: " + attachment.getSeModule());
//Get the modifiedBy User instance of each attachment
com.zoho.crm.api.users.User modifiedBy = attachment.getModifiedBy();
//Check if modifiedBy is not null
if(modifiedBy != null)
{
//Get the Name of the modifiedBy User
System.out.println("Note Attachment Modified By User-Name: " + modifiedBy.getName());
//Get the ID of the modifiedBy User
System.out.println("Note Attachment Modified By User-ID: " + modifiedBy.getId());
//Get the Email of the modifiedBy User
System.out.println("Note Attachment Modified By User-Email: " + modifiedBy.getEmail());
}
//Get the state of each attachment
System.out.println("Note Attachment State: " + attachment.getState());
//Get the ID of each attachment
System.out.println("Note Attachment ID: " + attachment.getId());
//Get the createdBy User instance of each attachment
com.zoho.crm.api.users.User createdBy = attachment.getCreatedBy();
//Check if createdBy is not null
if(createdBy != null)
{
//Get the name of the createdBy User
System.out.println("Note Attachment Created By User-Name: " + createdBy.getName());
//Get the ID of the createdBy User
System.out.println("Note Attachment Created By User-ID: " + createdBy.getId());
//Get the Email of the createdBy User
System.out.println("Note Attachment Created By User-Email: " + createdBy.getEmail());
}
//Get the linkUrl of each attachment
System.out.println("Note Attachment LinkUrl: " + attachment.getLinkUrl());
}
}
package com.zoho.crm.sample.notes;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.zoho.crm.api.HeaderMap;
import com.zoho.crm.api.ParameterMap;
import com.zoho.crm.api.attachments.Attachment;
import com.zoho.crm.api.notes.APIException;
import com.zoho.crm.api.notes.ActionHandler;
import com.zoho.crm.api.notes.ActionResponse;
import com.zoho.crm.api.notes.ActionWrapper;
import com.zoho.crm.api.notes.BodyWrapper;
import com.zoho.crm.api.notes.Info;
import com.zoho.crm.api.notes.NotesOperations;
import com.zoho.crm.api.notes.NotesOperations.DeleteNotesParam;
import com.zoho.crm.api.notes.NotesOperations.GetNotesHeader;
import com.zoho.crm.api.notes.NotesOperations.GetNotesParam;
import com.zoho.crm.api.notes.ResponseHandler;
import com.zoho.crm.api.notes.ResponseWrapper;
import com.zoho.crm.api.notes.SuccessResponse;
import com.zoho.crm.api.record.Record;
import com.zoho.crm.api.util.APIResponse;
import com.zoho.crm.api.util.Model;
public class Note
{
/**
* Create Notes
* This method is used to add new notes and print the response.
* @throws Exception
*/
public static void createNotes() throws Exception
{
//Get instance of NotesOperations Class
NotesOperations notesOperations = new NotesOperations();
//Get instance of BodyWrapper Class that will contain the request body
BodyWrapper bodyWrapper = new BodyWrapper();
//List of Note instances
List<com.zoho.crm.api.notes.Note> notes = new ArrayList<com.zoho.crm.api.notes.Note>();
for(int i = 1; i <= 5; i++)
{
//Get instance of Note Class
com.zoho.crm.api.notes.Note note = new com.zoho.crm.api.notes.Note();
//Set Note_Title of the Note
note.setNoteTitle("Contacted");
//Set NoteContent of the Note
note.setNoteContent("Need to do further tracking");
//Get instance of Record Class
Record parentRecord = new Record();
//Set ID of the Record
parentRecord.setId(3477061000005702002L);
//Set ParentId of the Note
note.setParentId(parentRecord);
//Set SeModule of the Record
note.setSeModule("Leads");
//Add Note instance to the list
notes.add(note);
}
//Set the list to notes in BodyWrapper instance
bodyWrapper.setData(notes);
//Call createNotes method that takes BodyWrapper instance as parameter
APIResponse<ActionHandler> response = notesOperations.createNotes(bodyWrapper);
if(response != null)
{
//Get the status code from response
System.out.println("Status Code: " + response.getStatusCode());
//Check if expected response is received
if(response.isExpected())
{
//Get object from response
ActionHandler actionHandler = response.getObject();
if(actionHandler instanceof ActionWrapper)
{
//Get the received ActionWrapper instance
ActionWrapper actionWrapper = (ActionWrapper) actionHandler;
//Get the list of obtained ActionResponse instances
List<ActionResponse> actionResponses = actionWrapper.getData();
for(ActionResponse actionResponse : actionResponses)
{
//Check if the request is successful
if(actionResponse instanceof SuccessResponse)
{
//Get the received SuccessResponse instance
SuccessResponse successResponse = (SuccessResponse)actionResponse;
//Get the Status
System.out.println("Status: " + successResponse.getStatus().getValue());
//Get the Code
System.out.println("Code: " + successResponse.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : successResponse.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + successResponse.getMessage().getValue());
}
//Check if the request returned an exception
else if(actionResponse instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionResponse;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
}
//Check if the request returned an exception
else if(actionHandler instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionHandler;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
else
{//If response is not as expected
//Get model object from response
Model responseObject = response.getModel();
//Get the response object's class
Class<? extends Model> clas = responseObject.getClass();
//Get all declared fields of the response class
Field[] fields = clas.getDeclaredFields();
for(Field field : fields)
{
//Get each value
System.out.println(field.getName() + ":" + field.get(responseObject));
}
}
}
}
}
package com.zoho.crm.sample.notes;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.zoho.crm.api.HeaderMap;
import com.zoho.crm.api.ParameterMap;
import com.zoho.crm.api.attachments.Attachment;
import com.zoho.crm.api.notes.APIException;
import com.zoho.crm.api.notes.ActionHandler;
import com.zoho.crm.api.notes.ActionResponse;
import com.zoho.crm.api.notes.ActionWrapper;
import com.zoho.crm.api.notes.BodyWrapper;
import com.zoho.crm.api.notes.Info;
import com.zoho.crm.api.notes.NotesOperations;
import com.zoho.crm.api.notes.NotesOperations.DeleteNotesParam;
import com.zoho.crm.api.notes.NotesOperations.GetNotesHeader;
import com.zoho.crm.api.notes.NotesOperations.GetNotesParam;
import com.zoho.crm.api.notes.ResponseHandler;
import com.zoho.crm.api.notes.ResponseWrapper;
import com.zoho.crm.api.notes.SuccessResponse;
import com.zoho.crm.api.record.Record;
import com.zoho.crm.api.util.APIResponse;
import com.zoho.crm.api.util.Model;
public class Note
{
/**
* Update Notes</h3>
* This method is used to update an existing note and print the response.
* @throws Exception
*/
public static void updateNotes() throws Exception
{
//Get instance of NotesOperations Class
NotesOperations notesOperations = new NotesOperations();
//Get instance of BodyWrapper Class that will contain the request body
BodyWrapper bodyWrapper = new BodyWrapper();
//List of Note instances
List<com.zoho.crm.api.notes.Note> notes = new ArrayList<com.zoho.crm.api.notes.Note>();
//Get instance of Note Class
com.zoho.crm.api.notes.Note note = new com.zoho.crm.api.notes.Note();
note.setId(3477061000006154001L);
//Set Note_Title of the Note
note.setNoteTitle("Contacted12");
//Set NoteContent of the Note
note.setNoteContent("Need to do further tracking12");
//Add Note instance to the list
notes.add(note);
note = new com.zoho.crm.api.notes.Note();
note.setId(3477061000006154002L);
//Set Note_Title of the Note
note.setNoteTitle("Contacted13");
//Set NoteContent of the Note
note.setNoteContent("Need to do further tracking13");
//Add Note instance to the list
notes.add(note);
//Set the list to notes in BodyWrapper instance
bodyWrapper.setData(notes);
//Call updateNotes method that takes BodyWrapper instance as parameter
APIResponse<ActionHandler> response = notesOperations.updateNotes(bodyWrapper);
if(response != null)
{
//Get the status code from response
System.out.println("Status Code: " + response.getStatusCode());
//Check if expected response is received
if(response.isExpected())
{
//Get object from response
ActionHandler actionHandler = response.getObject();
if(actionHandler instanceof ActionWrapper)
{
//Get the received ActionWrapper instance
ActionWrapper actionWrapper = (ActionWrapper) actionHandler;
//Get the list of obtained ActionResponse instances
List<ActionResponse> actionResponses = actionWrapper.getData();
for(ActionResponse actionResponse : actionResponses)
{
//Check if the request is successful
if(actionResponse instanceof SuccessResponse)
{
//Get the received SuccessResponse instance
SuccessResponse successResponse = (SuccessResponse)actionResponse;
//Get the Status
System.out.println("Status: " + successResponse.getStatus().getValue());
//Get the Code
System.out.println("Code: " + successResponse.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : successResponse.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + successResponse.getMessage().getValue());
}
//Check if the request returned an exception
else if(actionResponse instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionResponse;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
if(exception.getDetails() != null)
{
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
}
//Check if the request returned an exception
else if(actionHandler instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionHandler;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
else
{//If response is not as expected
//Get model object from response
Model responseObject = response.getModel();
//Get the response object's class
Class<? extends Model> clas = responseObject.getClass();
//Get all declared fields of the response class
Field[] fields = clas.getDeclaredFields();
for(Field field : fields)
{
//Get each value
System.out.println(field.getName() + ":" + field.get(responseObject));
}
}
}
}
}
package com.zoho.crm.sample.notes;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.zoho.crm.api.HeaderMap;
import com.zoho.crm.api.ParameterMap;
import com.zoho.crm.api.attachments.Attachment;
import com.zoho.crm.api.notes.APIException;
import com.zoho.crm.api.notes.ActionHandler;
import com.zoho.crm.api.notes.ActionResponse;
import com.zoho.crm.api.notes.ActionWrapper;
import com.zoho.crm.api.notes.BodyWrapper;
import com.zoho.crm.api.notes.Info;
import com.zoho.crm.api.notes.NotesOperations;
import com.zoho.crm.api.notes.NotesOperations.DeleteNotesParam;
import com.zoho.crm.api.notes.NotesOperations.GetNotesHeader;
import com.zoho.crm.api.notes.NotesOperations.GetNotesParam;
import com.zoho.crm.api.notes.ResponseHandler;
import com.zoho.crm.api.notes.ResponseWrapper;
import com.zoho.crm.api.notes.SuccessResponse;
import com.zoho.crm.api.record.Record;
import com.zoho.crm.api.util.APIResponse;
import com.zoho.crm.api.util.Model;
public class Note
{
/**
* This method is used to delete notes in bulk and print the response.
* @param notesID - The list of note IDs to be deleted
* @throws Exception
*/
public static void deleteNotes(List<Long> notesId) throws Exception
{
//example
//ArrayList<Long> notesId = new ArrayList<Long>(Arrays.asList(3477061000006153001L,3477061000006153002L,3477061000006154005L));
//Get instance of NotesOperations Class
NotesOperations notesOperations = new NotesOperations();
//Get instance of ParameterMap Class
ParameterMap paramInstance = new ParameterMap();
for(Long id : notesId)
{
paramInstance.add(DeleteNotesParam.IDS, id);
}
//Call deleteNotes method that takes paramInstance as parameter
APIResponse<ActionHandler> response = notesOperations.deleteNotes(paramInstance);
if(response != null)
{
//Get the status code from response
System.out.println("Status Code: " + response.getStatusCode());
//Check if expected response is received
if(response.isExpected())
{
//Get object from response
ActionHandler actionHandler = response.getObject();
if(actionHandler instanceof ActionWrapper)
{
//Get the received ActionWrapper instance
ActionWrapper actionWrapper = (ActionWrapper) actionHandler;
//Get the list of obtained ActionResponse instances
List<ActionResponse> actionResponses = actionWrapper.getData();
for(ActionResponse actionResponse : actionResponses)
{
//Check if the request is successful
if(actionResponse instanceof SuccessResponse)
{
//Get the received SuccessResponse instance
SuccessResponse successResponse = (SuccessResponse)actionResponse;
//Get the Status
System.out.println("Status: " + successResponse.getStatus().getValue());
//Get the Code
System.out.println("Code: " + successResponse.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : successResponse.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + successResponse.getMessage().getValue());
}
//Check if the request returned an exception
else if(actionResponse instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionResponse;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
if(exception.getDetails() != null)
{
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
}
//Check if the request returned an exception
else if(actionHandler instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionHandler;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
else
{//If response is not as expected
//Get model object from response
Model responseObject = response.getModel();
//Get the response object's class
Class<? extends Model> clas = responseObject.getClass();
//Get all declared fields of the response class
Field[] fields = clas.getDeclaredFields();
for(Field field : fields)
{
//Get each value
System.out.println(field.getName() + ":" + field.get(responseObject));
}
}
}
}
}
package com.zoho.crm.sample.notes;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.zoho.crm.api.HeaderMap;
import com.zoho.crm.api.ParameterMap;
import com.zoho.crm.api.attachments.Attachment;
import com.zoho.crm.api.notes.APIException;
import com.zoho.crm.api.notes.ActionHandler;
import com.zoho.crm.api.notes.ActionResponse;
import com.zoho.crm.api.notes.ActionWrapper;
import com.zoho.crm.api.notes.BodyWrapper;
import com.zoho.crm.api.notes.Info;
import com.zoho.crm.api.notes.NotesOperations;
import com.zoho.crm.api.notes.NotesOperations.DeleteNotesParam;
import com.zoho.crm.api.notes.NotesOperations.GetNotesHeader;
import com.zoho.crm.api.notes.NotesOperations.GetNotesParam;
import com.zoho.crm.api.notes.ResponseHandler;
import com.zoho.crm.api.notes.ResponseWrapper;
import com.zoho.crm.api.notes.SuccessResponse;
import com.zoho.crm.api.record.Record;
import com.zoho.crm.api.util.APIResponse;
import com.zoho.crm.api.util.Model;
public class Note
{
/**
* Get Note
* This method is used to get the note and print the response.
* @param noteId - The ID of the Note to be obtained
* @throws Exception
*/
public static void getNote(Long noteId) throws Exception
{
//example
//Long noteId = 3477061000006153005L;
//Get instance of NotesOperations Class
NotesOperations notesOperations = new NotesOperations();
ParameterMap paramInstance = new ParameterMap();
HeaderMap headerInstance = new HeaderMap();
//Call getNote method that takes noteId as parameter
APIResponse<ResponseHandler> response = notesOperations.getNote(noteId, paramInstance, headerInstance);
if(response != null)
{
//Get the status code from response
System.out.println("Status Code: " + response.getStatusCode());
if(Arrays.asList(204,304).contains(response.getStatusCode()))
{
System.out.println(response.getStatusCode() == 204? "No Content" : "Not Modified");
return;
}
//Check if expected response is received
if(response.isExpected())
{
//Get object from response
ResponseHandler responseHandler = response.getObject();
if(responseHandler instanceof ResponseWrapper)
{
//Get the received ResponseWrapper instance
ResponseWrapper responseWrapper = (ResponseWrapper) responseHandler;
//Get the list of obtained Note instances
List<com.zoho.crm.api.notes.Note> notes = responseWrapper.getData();
for(com.zoho.crm.api.notes.Note note : notes)
{
//Get the owner User instance of each Note
com.zoho.crm.api.users.User owner = note.getOwner();
//Check if owner is not null
if(owner != null)
{
//Get the name of the owner User
System.out.println("Note Owner User-Name: " + owner.getName());
//Get the ID of the owner User
System.out.println("Note Owner User-ID: " + owner.getId());
//Get the Email of the owner User
System.out.println("Note Owner Email: " + owner.getEmail());
}
//Get the ModifiedTime of each Module
System.out.println("Note ModifiedTime: " + note.getModifiedTime());
//Get the list of Attachment instance each Note
List<Attachment> attachments = note.getAttachments();
//Check if attachments is not null
if(attachments != null)
{
for(Attachment attachment : attachments)
{
printAttachment(attachment);
}
}
//Get the CreatedTime of each Note
System.out.println("Note CreatedTime: " + note.getCreatedTime());
//Get the parentId Record instance of each Note
Record parentId = note.getParentId();
//Check if parentId is not null
if(parentId != null)
{
if(parentId.getKeyValue("name") != null)
{
//Get the parent record Name of each Note
System.out.println("Note parent record Name: " + parentId.getKeyValue("name"));
}
//Get the parent record ID of each Note
System.out.println("Note parent record ID: " + parentId.getId());
}
//Get the Editable of each Note
System.out.println("Note Editable: " + note.getEditable().toString());
//Get the SeModule of each Note
System.out.println("Note SeModule: " + note.getSeModule());
//Get the IsSharedToClient of each Note
System.out.println("Note IsSharedToClient: " + note.getIsSharedToClient().toString());
//Get the modifiedBy User instance of each Note
com.zoho.crm.api.users.User modifiedBy = note.getModifiedBy();
//Check if modifiedBy is not null
if(modifiedBy != null)
{
//Get the Name of the modifiedBy User
System.out.println("Note Modified By User-Name: " + modifiedBy.getName());
//Get the ID of the modifiedBy User
System.out.println("Note Modified By User-ID: " + modifiedBy.getId());
//Get the Email of the modifiedBy User
System.out.println("Note Modified By User-Email: " + modifiedBy.getEmail());
}
//Get the Size of each Note
System.out.println("Note Size: " + note.getSize());
//Get the State of each Note
System.out.println("Note State: " + note.getState());
//Get the VoiceNote of each Note
System.out.println("Note VoiceNote: " + note.getVoiceNote().toString());
//Get the Id of each Note
System.out.println("Note Id: " + note.getId());
//Get the createdBy User instance of each Note
com.zoho.crm.api.users.User createdBy = note.getCreatedBy();
//Check if createdBy is not null
if(createdBy != null)
{
//Get the Name of the createdBy User
System.out.println("Note Created By User-Name: " + createdBy.getName());
//Get the ID of the createdBy User
System.out.println("Note Created By User-ID: " + createdBy.getId());
//Get the Email of the createdBy User
System.out.println("Note Created By User-Email: " + createdBy.getEmail());
}
//Get the NoteTitle of each Note
System.out.println("Note NoteTitle: " + note.getNoteTitle());
//Get the NoteContent of each Note
System.out.println("Note NoteContent: " + note.getNoteContent());
}
}
//Check if the request returned an exception
else if(responseHandler instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) responseHandler;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
else
{//If response is not as expected
//Get model object from response
Model responseObject = response.getModel();
//Get the response object's class
Class<? extends Model> clas = responseObject.getClass();
//Get all declared fields of the response class
Field[] fields = clas.getDeclaredFields();
for(Field field : fields)
{
//Get each value
System.out.println(field.getName() + ":" + field.get(responseObject));
}
}
}
}
package com.zoho.crm.sample.notes;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.zoho.crm.api.HeaderMap;
import com.zoho.crm.api.ParameterMap;
import com.zoho.crm.api.attachments.Attachment;
import com.zoho.crm.api.notes.APIException;
import com.zoho.crm.api.notes.ActionHandler;
import com.zoho.crm.api.notes.ActionResponse;
import com.zoho.crm.api.notes.ActionWrapper;
import com.zoho.crm.api.notes.BodyWrapper;
import com.zoho.crm.api.notes.Info;
import com.zoho.crm.api.notes.NotesOperations;
import com.zoho.crm.api.notes.NotesOperations.DeleteNotesParam;
import com.zoho.crm.api.notes.NotesOperations.GetNotesHeader;
import com.zoho.crm.api.notes.NotesOperations.GetNotesParam;
import com.zoho.crm.api.notes.ResponseHandler;
import com.zoho.crm.api.notes.ResponseWrapper;
import com.zoho.crm.api.notes.SuccessResponse;
import com.zoho.crm.api.record.Record;
import com.zoho.crm.api.util.APIResponse;
import com.zoho.crm.api.util.Model;
public class Note
{
/**
* Update Note</h3>
* This method is used to update an existing note and print the response.
* @param noteId - The ID of the Note to be obtained
* @throws Exception
*/
public static void updateNote(Long noteId) throws Exception
{
//example
//Long noteId = 3477061000006153005L;
//Get instance of NotesOperations Class
NotesOperations notesOperations = new NotesOperations();
//Get instance of BodyWrapper Class that will contain the request body
BodyWrapper bodyWrapper = new BodyWrapper();
//List of Note instances
List<com.zoho.crm.api.notes.Note> notes = new ArrayList<com.zoho.crm.api.notes.Note>();
com.zoho.crm.api.notes.Note note = new com.zoho.crm.api.notes.Note();
//Set Note_Title of the Note
note.setNoteTitle("Contacted12");
//Set NoteContent of the Note
note.setNoteContent("Need to do further tracking12");
//Add Note instance to the list
notes.add(note);
//Set the list to notes in BodyWrapper instance
bodyWrapper.setData(notes);
//Call updateNote method that takes noteId and BodyWrapper instance as parameter
APIResponse<ActionHandler> response = notesOperations.updateNote(noteId, bodyWrapper);
if(response != null)
{
//Get the status code from response
System.out.println("Status Code: " + response.getStatusCode());
//Check if expected response is received
if(response.isExpected())
{
//Get object from response
ActionHandler actionHandler = response.getObject();
if(actionHandler instanceof ActionWrapper)
{
//Get the received ActionWrapper instance
ActionWrapper actionWrapper = (ActionWrapper) actionHandler;
//Get the list of obtained ActionResponse instances
List<ActionResponse> actionResponses = actionWrapper.getData();
for(ActionResponse actionResponse : actionResponses)
{
//Check if the request is successful
if(actionResponse instanceof SuccessResponse)
{
//Get the received SuccessResponse instance
SuccessResponse successResponse = (SuccessResponse)actionResponse;
//Get the Status
System.out.println("Status: " + successResponse.getStatus().getValue());
//Get the Code
System.out.println("Code: " + successResponse.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : successResponse.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + successResponse.getMessage().getValue());
}
//Check if the request returned an exception
else if(actionResponse instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionResponse;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
if(exception.getDetails() != null)
{
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
}
//Check if the request returned an exception
else if(actionHandler instanceof APIException)
{
//Get the received APIException instance
APIException exception = (APIException) actionHandler;
//Get the Status
System.out.println("Status: " + exception.getStatus().getValue());
//Get the Code
System.out.println("Code: " + exception.getCode().getValue());
System.out.println("Details: " );
//Get the details map
for(Map.Entry<String, Object> entry : exception.getDetails().entrySet())
{
//Get each value in the map
System.out.println(entry.getKey() + ": " + entry.getValue());
}
//Get the Message
System.out.println("Message: " + exception.getMessage().getValue());
}
}
else
{//If response is not as expected
//Get model object from response
Model responseObject = response.getModel();
//Get the response object's class
Class<? extends Model> clas = responseObject.getClass();
//Get all declared fields of the response class
Field[] fields = clas.getDeclaredFields();
for(Field field : fields)
{
//Get each value
System.out.println(field.getName() + ":" + field.get(responseObject));
}
}
}
}
}