# Contacts Contacts ## Creates a new contact record that does not already exist. - [POST /contacts/{tenantId}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/createcontact.md): This method will auto-generate an ID and create a new contact. If an ID is specified for the contact, an error will be thrown. ## Execute Batch Operations - [POST /contacts/{tenantId}/batch](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/executebatchoperations.md): TAllows you to perform up to 100 parallel patch/delete operations ## Checks whether a contact can manage another - [GET /contacts/{tenantId}/checkManageability/{managerId}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/checkmanageability.md): Checks to see if a contact is clear to manage another contact by email addess ## Returns the contact related to the currently logged in user - [GET /contacts/{tenantId}/current](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/getcurrentcontactfromcredentials.md): Returns the contact related to the currently logged in user ## Creates a new contact and links it to the currently logged in user - [POST /contacts/{tenantId}/current](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/createcontactandlinkuser.md): Returns the new contact which is linked to the currently logged in user ## Get contacts (and descendants recursively) for an organization - [GET /contacts/{tenantId}/descendants/{organization_id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/recursivelylistcontactsfororganizationid.md): Does a recursive lookup of contacts by organization ## Returns a list of records with the specified email_address - [GET /contacts/{tenantId}/emailAddress/{email_address}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/listcontactsbyemailaddress.md): Returns a list of records with the specified email_address ## Returns a list of records with the specified email_address2 - [GET /contacts/{tenantId}/emailAddress2/{email_address2}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/listcontactsbyemailaddress2.md): Returns a list of records with the specified email_address2 ## Returns a list of records with the specified email_address3 - [GET /contacts/{tenantId}/emailAddress3/{email_address3}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/listcontactsbyemailaddress3.md): Returns a list of records with the specified email_address3 ## Finds all conflicting fields for contacts - [POST /contacts/{tenantId}/generateMergedObject](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/generatemergedobject.md): This method will load contacts, compare them, and return all fields that are in conflict ## Finds all conflicting fields for contacts - [GET /contacts/{tenantId}/getFieldConflicts/{ids}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/getfieldconflicts.md): This method will load contacts, compare them, and return all fields that are in conflict ## Returns a single contact by number - [GET /contacts/{tenantId}/number/{number}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/readcontactbynumber.md): Returns a single contact by number ## Finds contacts for an organization - [GET /contacts/{tenantId}/organization/{organization_id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/listcontactsbyorganizationid.md): Returns a list of records with the specified organization_id. If the list is large, a results_uri is returned with a list that can be downloaded. ## Returns the contact related to the currently logged in user - [GET /contacts/{tenantId}/portal](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/getcontactfromportaluser.md): Returns the contact related to the currently logged in user ## Initiates a workflow to create a new contact and try to link them to an existing organization - [POST /contacts/{tenantId}/portal](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/createcontactandlinkportaluser.md): Returns the new contact which is linked to the currently logged in user ## Gets a contact by an email address - [GET /contacts/{tenantId}/portal/emailAddress/{email_address}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/getcontactbyemailaddress.md): Returns the appropriate contact ID for an email, can be called by the portal and useful in duplicate prevention ## Sends an authorization email then links the current user to a contact with a different email address - [POST /contacts/{tenantId}/portal/{emailAddress}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/authorizeandlinkalternateemail.md): Sends an authorization email then links the current user to a contact with a different email address ## Returns a list of records with the specified portal_delegate_id - [GET /contacts/{tenantId}/portalDelegate/{portal_delegate_id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/listcontactsbyportaldelegateid.md): Returns a list of records with the specified portal_delegate_id ## Searches for contacts using predefined parameters - [POST /contacts/{tenantId}/search](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/searchforcontacts.md): Searches for contacts using predefined parameters ## Looks up a social profile and returns what is found to the user - [GET /contacts/{tenantId}/socialProfile/{emailAddress}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/getsocialprofile.md): This method will make a call and parse/return the results ## Returns a contact from the system by its ID. - [DELETE /contacts/{tenantId}/{id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/deletecontact.md): This method will delete a contact with the specified ID. ## Returns a contact from the system by its ID. - [GET /contacts/{tenantId}/{id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/getcontact.md): This method will look up a contact by the specified ID and return it back. ## Partially updates a contact with the specified ID. - [PATCH /contacts/{tenantId}/{id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/patchcontact.md): This method will patch an existing contact with the specified ID, using the HTTP PATCH specification. ## Updates a contact with the specified ID. - [PUT /contacts/{tenantId}/{id}](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/updatecontact.md): This method will update an existing contact with the specified ID. ## Updates a contact with data merged from other contacts then signals other microservices to complete the merge - [PUT /contacts/{tenantId}/{id}/merge](https://docs.api.rhythmsoftware.com/apis/rolodex/rolodex-v1/contacts/mergecontacts.md): Updates a contact with data merged from other contacts then signals other microservices to complete the merge