Use Cases for Individual
I want to
Request Type Example URL
Retrieve and display details of a particular individual. GET by ID {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual/{ID} NOTE: For an invalid ID, you receive HTTP 404 error.Based on the provided field values, retrieve and display details of individuals. GET with Fields {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual?fields=name NOTE: The requested fields are part of the output if they have a value.List all the individuals present in the system. GET List {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual List individuals present in the system based on the filter applied. GET List with Filtering {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual?name=John Doe NOTE: The requested fields are part of the output if they have a value.List individuals, limit the number of records to a specified limit, and start the results from the page specified by offset. GET List by limit and offset {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual?offset=4&pageLimit=1&pageinfo=true Create a new individual by providing the required details. POST {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual NOTE: A new individual is created based on the values mentioned for the mandatory fields.Update details of a particular individual. PATCH {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual/{ID} Delete an individual. DELETE {{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual/{ID} NOTE: DELETE requires an Apex extensibility implementation. Without it, the API returns HTTP 400.
GET by ID
Consider you want to retrieve details of a particular individual.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual/{ID}
Sample Response
1 {
2 "id": "003xx000004WofUAAS",
3 "href": "/connect/comms/partymanagement/v5/individual/003xx000004WofUAAS",
4 "@type": "Individual",
5 "familyName": "Doe",
6 "givenName": "John",
7 "name": "John Doe",
8 "title": "Mr.",
9 "birthDate": "1990-01-15",
10 "contactMedium": [
11 {
12 "@type": "EmailContactMedium",
13 "emailAddress": "john.doe@example.com"
14 },
15 {
16 "@type": "PhoneContactMedium",
17 "phoneNumber": "+1-555-123-4567"
18 },
19 {
20 "@type": "FaxContactMedium",
21 "faxNumber": "+1-555-987-6543"
22 },
23 {
24 "@type": "GeographicAddressContactMedium",
25 "street1": "123 Main Street",
26 "city": "San Francisco",
27 "stateOrProvince": "CA",
28 "postCode": "94105",
29 "country": "US"
30 }
31 ],
32 "relatedParty": [
33 {
34 "@type": "RelatedPartyRefOrPartyRoleRef",
35 "role": "employer",
36 "partyOrPartyRole": {
37 "id": "001xx000003Hg0xAAC",
38 "href": "/connect/comms/partymanagement/v5/organization/001xx000003Hg0xAAC",
39 "name": "Acme Corporation",
40 "@type": "PartyRef",
41 "@referredType": "Organization"
42 }
43 }
44 ]
45 }
GET with Fields
Consider you want to retrieve individuals and return only these fields in the output.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual?fields=name
Sample Response
1 [
2 {
3 "id": "003xx000004WofUAAS",
4 "href": "/connect/comms/partymanagement/v5/individual/003xx000004WofUAAS",
5 "name": "John Doe",
6 "@type": "Individual"
7 }
8 ]
GET List
Consider there are multiple individuals in the system and you want to list all of them.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual
Sample Response
1 [
2 {
3 "id": "003xx000004WofUAAS",
4 "href": "/connect/comms/partymanagement/v5/individual/003xx000004WofUAAS",
5 "familyName": "Doe",
6 "givenName": "John",
7 "name": "John Doe",
8 "@type": "Individual"
9 }
10 ]
GET List with Filtering
Consider you want to retrieve individuals with applied filter values.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual?name=John Doe
Sample Response
1 [
2 {
3 "id": "003xx000004WofUAAS",
4 "href": "/connect/comms/partymanagement/v5/individual/003xx000004WofUAAS",
5 "familyName": "Doe",
6 "givenName": "John",
7 "name": "John Doe",
8 "@type": "Individual"
9 }
10 ]
GET List by limit and offset
Consider you want to retrieve a list of individuals, limit the number of records, and start the results from the specified offset.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual?offset=4&pageLimit=1&pageinfo=true
POST
Consider you want to create a new individual. givenName and familyName are mandatory.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual
Sample Request
1 {
2 "givenName": "Jane",
3 "familyName": "Doe",
4 "@type": "Individual"
5 }
Sample Response
1 {
2 "id": "003xx000004WofUAAS",
3 "href": "/connect/comms/partymanagement/v5/individual/003xx000004WofUAAS",
4 "familyName": "Doe",
5 "givenName": "Jane",
6 "name": "Jane Doe",
7 "@type": "Individual"
8 }
PATCH
Consider you want to update details of a particular individual. Patchable attributes include givenName, familyName, title, birthDate, contactMedium, and relatedParty. These attributes are not patchable: id, href, name, and @type.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual/{ID}
Sample Request
1 {
2 "@type": "Individual",
3 "givenName": "Jane",
4 "familyName": "Smith",
5 "title": "Prof",
6 "birthDate": "1991-06-20",
7 "contactMedium": [
8 {
9 "@type": "EmailContactMedium",
10 "emailAddress": "jane.smith@newexample.com"
11 },
12 {
13 "@type": "PhoneContactMedium",
14 "phoneNumber": "+1-555-0200"
15 }
16 ]
17 }
DELETE
Contact and Account do not include a status field that supports soft delete out of the box. The DELETE endpoint is provided as an extensibility hook. Without a custom Apex implementation, the API returns HTTP 400.
Sample URL
{{orgendpoint}}/services/data/{{version}}/connect/comms/partymanagement/v5/individual/{ID}
Sample Request
No request body.
Sample Response
With an Apex extensibility implementation: HTTP 204 with no response body.
Without extensibility:
1 [
2 {
3 "errorCode": "BAD_REQUEST",
4 "message": "DELETE operation for Individual requires an extensibility class implementing comms_apex_ext.IIndividualPartyManagementDELETE. Configure a custom Apex class that provides a soft-delete status field via the customiseMutationPayload hook."
5 }
6 ]