> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cynopsis.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Create CRP with Existing Profile

This endpoint allows you to create a **Customer Related Party (CRP)** using an existing profile. This is a two-step process that involves searching for an existing profile and then creating the CRP using that profile's data.

This approach allows you to reuse existing customer data when creating related parties, ensuring data consistency while allowing for CRP-specific customizations.

***

## Important Rules - Read Before Implementation

<Warning>
  **Profile Linkage Requirements**

  * `profileId` and `profileReferenceId` must be populated from the profile search response (Step 1)
  * The `profileId` tells the system which existing profile to use for the new CRP
  * Without these fields, the system will not link to the existing profile
</Warning>

<Info>
  **Synced Fields (Shared with Original Profile)**

  The following fields are synced with the original customer profile. Changes to these fields will affect **both** the CRP and the original profile:

  * **`profileReferenceId`**: Can be changed, but changes will reflect on the original customer
  * **`particular`**: All fields within the particular object are synced including:
    * `name`, `alias`, `formerName`
    * `email`, `phone`, `address`
    * `nationality`, `countryOfResidence`, `countryOfBirth`
    * `gender`, `dateOfBirth`, `salutation`
    * `identityDocumentType`, `identityNumber`, `identityIssuedDate`, `identityExpiryDate`

  **Important**: Any modification to these fields in the CRP will update the original profile and affect all other CRPs using the same profile.
</Info>

<Note>
  **CRP-Specific Fields (Not Synced)**

  The following fields are specific to the CRP. Changes to these fields will **NOT** sync with the original profile:

  * **`other`**: All fields within the other object including:
    * `industry`, `occupation`
    * `sourceOfFunds`, `sourceOfWealth`
    * `bankAccount`, `paymentMode`
    * `onBoardingMode`, `transactionBehaviour`
    * `additionalInformation`, `productServiceComplexity`
    * `natureOfBusinessRelationship`
    * `undischargedBankrupt`, `ownershipPercentage`, `status`

  These fields are carried over from the original profile during creation but are maintained separately for the CRP. You can modify them without affecting the original profile or other CRPs.
</Note>

***

## Key Differences: Creating CRP with Existing Profile vs New Profile

| Aspect                 | With Existing Profile                                           | New Profile                    |
| ---------------------- | --------------------------------------------------------------- | ------------------------------ |
| **Profile Search**     | Required (Step 1)                                               | Not required                   |
| **profileId**          | Must be provided from search results                            | System generates new profileId |
| **profileReferenceId** | Taken from existing profile (can be modified, affects original) | Must be provided as new value  |
| **particular**         | Synced with original profile (changes affect original)          | Independent data               |
| **other**              | Carried over but not synced (changes don't affect original)     | Independent data               |
| **Use Case**           | Reusing existing customer as CRP                                | Creating brand new CRP         |
| **Data Consistency**   | Ensures consistency across related profiles                     | Each profile is independent    |

***

## Two-Step Process Overview

Creating a CRP with an existing profile requires:

1. **Step 1**: Search for and retrieve the existing profile using the profile search API
2. **Step 2**: Create the CRP using the profile information obtained from Step 1

***

## Step 1: Search for Existing Profile

First, search for the existing profile you want to use for the CRP.

<Info>
  **Full API Reference**: For complete API documentation, see [Search Profile for CRP Creation](/artemis3-api-reference/customer-related-apis/search-profile-for-crp)
</Info>

### Endpoint

```
GET /api/customer/profile/{type}/{mainCustomerId}
```

### Path Parameters

| Parameter        | Type   | Required | Description                                                     |
| ---------------- | ------ | -------- | --------------------------------------------------------------- |
| `type`           | string | Yes      | Customer type: `INDIVIDUAL` or `CORPORATE`                      |
| `mainCustomerId` | number | Yes      | The ID of the main customer to which the CRP will be associated |

### Query Parameters

| Parameter      | Type   | Required | Description                       |
| -------------- | ------ | -------- | --------------------------------- |
| `searchString` | string | No       | Name of the profile to search for |

### Headers

| Header     | Type   | Required | Description       |
| ---------- | ------ | -------- | ----------------- |
| `x-domain` | number | Yes      | Domain identifier |

### Sample Request

```bash theme={null}
GET /api/customer/profile/INDIVIDUAL/1234?searchString=Aiden
Headers:
  x-domain: 1
```

### Sample Response - Success (200)

```json theme={null}
{
  "content": [
    {
      "customerCandidate": {
        "id": 8851,
        "createdAt": "2025-12-31T02:44:30.474+00:00",
        "updatedAt": "2026-01-05T08:56:22.829+00:00",
        "createdBy": null,
        "updatedBy": {
          "id": 17548,
          "updatedAt": "2026-01-13T07:46:27.966+00:00",
          "createdAt": null,
          "firstName": "Zen",
          "lastName": "",
          "email": "zen+1@cynopsis.co",
          "externalId": "17548",
          "active": true,
          "verified": true,
          "provider": "CRM",
          "fullName": "Zen",
          "rawFirstName": "Zen",
          "rawLastName": "",
          "deleted": 0,
          "role": "USER"
        },
        "active": true,
        "parentId": null,
        "profileId": 8521,
        "type": "INDIVIDUAL",
        "subType": null,
        "referenceId": null,
        "profileReferenceId": "sdsds342342",
        "particular": {
          "name": "Aiden test 2",
          "alias": [],
          "email": [],
          "phone": [],
          "gender": "UNKNOWN",
          "address": [],
          "formerName": [],
          "salutation": "",
          "dateOfBirth": null,
          "nationality": ["ALAND ISLANDS"],
          "countryOfBirth": "",
          "identityNumber": "",
          "countryOfResidence": "AFGHANISTAN",
          "identityExpiryDate": null,
          "identityIssuedDate": null,
          "identityDocumentType": ""
        },
        "other": {
          "industry": "NOT APPLICABLE - NOT APPLICABLE",
          "occupation": "NOT APPLICABLE - NOT APPLICABLE",
          "bankAccount": [],
          "paymentMode": ["NOT APPLICABLE"],
          "documentList": null,
          "sourceOfFunds": [
            {
              "id": "9aefb2d3-6ab9-48c5-b111-fb6992794f8b",
              "category": "LOTTERY/WINDFALL",
              "isLegacy": false,
              "amountDeclared": 10000000,
              "contributionPct": 33.33,
              "evidenceCorroborated": "YES"
            },
            {
              "id": "a07a86f2-2fb1-45ba-a8fb-e46b52cb2d8d",
              "category": "INHERITANCE",
              "isLegacy": false,
              "amountDeclared": 20000000,
              "contributionPct": 66.67,
              "evidenceCorroborated": "YES"
            }
          ],
          "sourceOfWealth": [
            {
              "id": "42c52ac2-e43d-4d0a-90a5-58690e851b8a",
              "category": "SAVINGS",
              "isLegacy": false,
              "amountDeclared": 150000.0,
              "contributionPct": 75.0,
              "evidenceCorroborated": "YES"
            },
            {
              "id": "93c026dc-dfb1-466b-95cb-d8f8d37afe3f",
              "category": "INVESTMENT RETURNS",
              "isLegacy": false,
              "amountDeclared": 50000.0,
              "contributionPct": 25.0,
              "evidenceCorroborated": "YES"
            }
          ],
          "onBoardingMode": "NOT APPLICABLE",
          "transactionBehaviour": ["NOT APPLICABLE"],
          "additionalInformation": "",
          "productServiceComplexity": "NOT APPLICABLE",
          "natureOfBusinessRelationship": ""
        },
        "notes": {
          "id": null,
          "diff": null,
          "createdAt": null,
          "createdBy": null,
          "srcDomain": {
            "id": 1,
            "name": "CYNOPSIS"
          },
          "updatedAt": null,
          "updatedBy": null,
          "reasonType": "PROFILE_UPDATED",
          "srcCustomerId": 8851,
          "srcReferenceId": null,
          "srcCustomerName": "Aiden test 2",
          "targetCustomerId": 8851,
          "targetReferenceId": null,
          "targetCustomerName": "Aiden test 2",
          "secondaryReasonTypes": [],
          "srcProfileReferenceId": "sdsds342342",
          "targetProfileReferenceId": "sdsds342342"
        },
        "vendorName": null,
        "vendorEntityGuid": null,
        "lastRiskAssessment": "2026-01-05T08:56:22.827+00:00",
        "nextReviewDate": null,
        "submittedKYCAt": null,
        "linkedCustomerId": null,
        "status": "PENDING",
        "riskRating": "UNKNOWN",
        "roles": [],
        "assignees": [],
        "watchers": [],
        "forms": null,
        "listRoleAsText": []
      }
    }
  ]
}
```

***

## Step 2: Create CRP Using the Profile

Once you have retrieved the profile information, use it to create the CRP using the standard CRP creation endpoint.

### Endpoint

```
POST /api/customer/{customerId}/crp
```

### Path Parameters

| Parameter    | Type   | Required | Description                                                        |
| ------------ | ------ | -------- | ------------------------------------------------------------------ |
| `customerId` | number | Yes      | The ID of the primary customer to which the CRP will be associated |

### Headers

| Header         | Type   | Required | Description                |
| -------------- | ------ | -------- | -------------------------- |
| `x-domain`     | number | Yes      | Domain identifier          |
| `Content-Type` | string | Yes      | Must be `application/json` |

### Sample Request Body - Individual CRP with Existing Profile

```json theme={null}
{
  "type": "INDIVIDUAL",
  "profileId": 8521,
  "profileReferenceId": "sdsds342342",
  "roles": [
    {
      "cid": "draft-1",
      "role": "DIRECTOR",
      "appointedDate": "2024-01-01",
      "resignedDate": null
    }
  ],
  "active": true,
  "particular": {
    "salutation": "",
    "name": "Aiden test 2",
    "alias": [],
    "formerName": [],
    "gender": "UNKNOWN",
    "nationality": ["ALAND ISLANDS"],
    "countryOfResidence": "AFGHANISTAN",
    "identityDocumentType": "",
    "identityNumber": "",
    "identityIssuedDate": null,
    "identityExpiryDate": null,
    "countryOfBirth": "",
    "dateOfBirth": null,
    "address": [],
    "phone": [],
    "email": []
  },
  "other": {
    "industry": "NOT APPLICABLE - NOT APPLICABLE",
    "occupation": "NOT APPLICABLE - NOT APPLICABLE",
    "bankAccount": [],
    "paymentMode": ["NOT APPLICABLE"],
    "sourceOfFunds": [
      {
        "id": "9aefb2d3-6ab9-48c5-b111-fb6992794f8b",
        "category": "LOTTERY/WINDFALL",
        "isLegacy": false,
        "amountDeclared": 10000000,
        "contributionPct": 33.33,
        "evidenceCorroborated": "YES"
      },
      {
        "id": "a07a86f2-2fb1-45ba-a8fb-e46b52cb2d8d",
        "category": "INHERITANCE",
        "isLegacy": false,
        "amountDeclared": 20000000,
        "contributionPct": 66.67,
        "evidenceCorroborated": "YES"
      }
    ],
    "sourceOfWealth": [
      {
        "id": "42c52ac2-e43d-4d0a-90a5-58690e851b8a",
        "category": "SAVINGS",
        "isLegacy": false,
        "amountDeclared": 150000.0,
        "contributionPct": 75.0,
        "evidenceCorroborated": "YES"
      },
      {
        "id": "93c026dc-dfb1-466b-95cb-d8f8d37afe3f",
        "category": "INVESTMENT RETURNS",
        "isLegacy": false,
        "amountDeclared": 50000.0,
        "contributionPct": 25.0,
        "evidenceCorroborated": "YES"
      }
    ],
    "onBoardingMode": "NOT APPLICABLE",
    "transactionBehaviour": ["NOT APPLICABLE"],
    "additionalInformation": "",
    "productServiceComplexity": "NOT APPLICABLE",
    "natureOfBusinessRelationship": ""
  }
}
```

### Sample Response Body - Success (200)

```json theme={null}
{
  "id": 8852,
  "createdAt": "2026-01-13T08:00:00.000+00:00",
  "updatedAt": "2026-01-13T08:00:00.000+00:00",
  "createdBy": {
    "id": 17548,
    "firstName": "Zen",
    "lastName": "",
    "email": "zen+1@cynopsis.co",
    "fullName": "Zen"
  },
  "updatedBy": null,
  "active": true,
  "parentId": 1234,
  "profileId": 8521,
  "type": "INDIVIDUAL",
  "referenceId": null,
  "profileReferenceId": "sdsds342342",
  "particular": {
    "name": "Aiden test 2",
    "alias": [],
    "email": [],
    "phone": [],
    "gender": "UNKNOWN",
    "address": [],
    "formerName": [],
    "salutation": "",
    "dateOfBirth": null,
    "nationality": ["ALAND ISLANDS"],
    "countryOfBirth": "",
    "identityNumber": "",
    "countryOfResidence": "AFGHANISTAN",
    "identityExpiryDate": null,
    "identityIssuedDate": null,
    "identityDocumentType": ""
  },
  "other": {
    "industry": "NOT APPLICABLE - NOT APPLICABLE",
    "occupation": "NOT APPLICABLE - NOT APPLICABLE",
    "bankAccount": [],
    "paymentMode": ["NOT APPLICABLE"],
    "documentList": null,
    "sourceOfFunds": [
      {
        "id": "9aefb2d3-6ab9-48c5-b111-fb6992794f8b",
        "category": "LOTTERY/WINDFALL",
        "isLegacy": false,
        "amountDeclared": 10000000,
        "contributionPct": 33.33,
        "evidenceCorroborated": "YES"
      },
      {
        "id": "a07a86f2-2fb1-45ba-a8fb-e46b52cb2d8d",
        "category": "INHERITANCE",
        "isLegacy": false,
        "amountDeclared": 20000000,
        "contributionPct": 66.67,
        "evidenceCorroborated": "YES"
      }
    ],
    "sourceOfWealth": [
      {
        "id": "42c52ac2-e43d-4d0a-90a5-58690e851b8a",
        "category": "SAVINGS",
        "isLegacy": false,
        "amountDeclared": 150000.0,
        "contributionPct": 75.0,
        "evidenceCorroborated": "YES"
      },
      {
        "id": "93c026dc-dfb1-466b-95cb-d8f8d37afe3f",
        "category": "INVESTMENT RETURNS",
        "isLegacy": false,
        "amountDeclared": 50000.0,
        "contributionPct": 25.0,
        "evidenceCorroborated": "YES"
      }
    ],
    "onBoardingMode": "NOT APPLICABLE",
    "transactionBehaviour": ["NOT APPLICABLE"],
    "additionalInformation": "",
    "productServiceComplexity": "NOT APPLICABLE",
    "natureOfBusinessRelationship": ""
  },
  "vendorName": null,
  "vendorEntityGuid": null,
  "lastRiskAssessment": null,
  "nextReviewDate": null,
  "submittedKYCAt": null,
  "linkedCustomerId": null,
  "status": "PENDING",
  "riskRating": "UNKNOWN",
  "roles": [
    {
      "id": 52,
      "createdAt": "2026-01-13T08:00:00.000+00:00",
      "updatedAt": "2026-01-13T08:00:00.000+00:00",
      "createdBy": null,
      "updatedBy": null,
      "role": "DIRECTOR",
      "appointedDate": "2024-01-01",
      "resignedDate": null
    }
  ],
  "assignees": [],
  "watchers": [],
  "forms": null,
  "listRoleAsText": ["DIRECTOR"]
}
```

***

## Complete Workflow Example

Here's a complete example of creating a CRP with an existing profile:

### 1. Search for Profile

```bash theme={null}
GET /api/customer/profile/INDIVIDUAL/1234?searchString=Aiden
Headers:
  x-domain: 1
```

### 2. Extract Key Fields from Response

From the response, extract:

* `profileId`: 8521
* `profileReferenceId`: "sdsds342342"
* `particular`: (entire object)
* `other`: (entire object)

### 3. Create CRP Request

```bash theme={null}
POST /api/customer/1234/crp
Headers:
  x-domain: 1
  Content-Type: application/json

Body:
{
  "type": "INDIVIDUAL",
  "profileId": 8521,
  "profileReferenceId": "sdsds342342",
  "roles": [
    {
      "role": "DIRECTOR",
      "appointedDate": "2024-01-01"
    }
  ],
  "particular": { ... },
  "other": { ... }
}
```

### 4. Verify CRP Creation

The response will contain the newly created CRP with:

* New CRP `id`
* Original `profileId` maintained
* Linked to the main customer via `parentId`
