---
title: "Create Relationship Type between Objects"
method: POST
path: "/v1/entity-link-types"
tags: ["Object Relationship Type Management"]
---

# Create Relationship Type between Objects

`POST /v1/entity-link-types`

Use this API to create a new Relationship Type between two object types.

> 🗒 Things to Know
> 
> - This API only supports objects created via Object Manager, including Projects, Models, and Datasets.

## Request body

- CustomLinkTypeCreateRequest
  - `name` string, required — The name of the relationship type.
  - `description` string — The description of the relationship type.
  - `linkAssociations` LinkTypeAssociationRequest[], required — The details of linked relationships.
    - `entityType1` BasicEntityTypeInformation, required
      - `id` string, uuid, required — The unique identifier for the entity type.
      - `name` string, required — The name of the entity type.
      - `seeded` boolean — This parameter indicates whether the entity type is seeded or custom.
      - `moduleName` string — The name of the module where the entity exists.
      - `schemaName` string — The name of the schema.
    - `entityType2` BasicEntityTypeInformation, required
      - `id` string, uuid, required — The unique identifier for the entity type.
      - `name` string, required — The name of the entity type.
      - `seeded` boolean — This parameter indicates whether the entity type is seeded or custom.
      - `moduleName` string — The name of the module where the entity exists.
      - `schemaName` string — The name of the schema.
    - `entityTypePairKey` string — The pair key of the linked object types.
  - `entityType1ToEntityType2EntityLinkName` string — The name of the source object type's relationship to the target object type.
  - `entityType2ToEntityType1EntityLinkName` string — The name of the target object type's relationship to the source object type.

## Response `201`

Created - The relationship type has been successfully created

- LinkTypeDetailedInformation
  - `id` string, uuid, required — The unique identifier of the relationship type.
  - `name` string, required — The name of the relationship type.
  - `nameKey` string — The name key of the relationship type used for translation purposes.
  - `seeded` boolean — This flag indicates whether the relationship type is seeded.
  - `moduleName` string — The name of the product where the relationship type exists.
  - `description` string — The description of the relationship type.
  - `descriptionKey` string — The description key of the relationship type used for translation purposes.
  - `entityType1ToEntityType2EntityLinkName` string — The name of the source object type's relationship to the target object type.
  - `entityType1ToEntityType2EntityLinkNameKey` string — The name key of the source object type's relationship to the target object type used for translation purposes.
  - `entityType2ToEntityType1EntityLinkName` string — The name of the target object type's relationship to the source object type.
  - `entityType2ToEntityType1EntityLinkNameKey` string — The name key of the target object types's relationship to the source object type.
  - `enableAudit` boolean — This flag indicates whether audit activity is enabled.
  - `allowNewCustomLinkAssociation` boolean — This flag indicates whether new relationship links are allowed.
  - `auditFields` EntityRecordAuditInformation
    - `createdDate` string, date-time, required — The date and time that the entity was last created.
    - `lastUpdatedDate` string, date-time — The date and time that the entity was last updated.
    - `createdBy` EntityBasicUserInformation
      - `id` string, uuid — The unique identifier of the user.
      - `name` string — The full name of the user.
      - `email` string — The email address of the user.
      - `initials` string — The initials for the first and last name of the user.
    - `lastModifiedBy` EntityBasicUserInformation
      - `id` string, uuid — The unique identifier of the user.
      - `name` string — The full name of the user.
      - `email` string — The email address of the user.
      - `initials` string — The initials for the first and last name of the user.
  - `linkAssociations` LinkTypeAssociationInformation[], required — The details of linked relationships.
    - `id` integer, required — The unique identifier of the relationship type.
    - `entityType1` BasicEntityTypeInformation, required
      - `id` string, uuid, required — The unique identifier for the entity type.
      - `name` string, required — The name of the entity type.
      - `seeded` boolean — This parameter indicates whether the entity type is seeded or custom.
      - `moduleName` string — The name of the module where the entity exists.
      - `schemaName` string — The name of the schema.
    - `entityType2` BasicEntityTypeInformation, required
      - `id` string, uuid, required — The unique identifier for the entity type.
      - `name` string, required — The name of the entity type.
      - `seeded` boolean — This parameter indicates whether the entity type is seeded or custom.
      - `moduleName` string — The name of the module where the entity exists.
      - `schemaName` string — The name of the schema.
    - `enabled` boolean, required — This flag indicates whether relationship links are enabled.
    - `seeded` boolean, required — This flag indicates whether the relationship type is seeded.
    - `auditFields` EntityRecordAuditInformation
      - `createdDate` string, date-time, required — The date and time that the entity was last created.
      - `lastUpdatedDate` string, date-time — The date and time that the entity was last updated.
      - `createdBy` EntityBasicUserInformation
        - `id` string, uuid — The unique identifier of the user.
        - `name` string — The full name of the user.
        - `email` string — The email address of the user.
        - `initials` string — The initials for the first and last name of the user.
      - `lastModifiedBy` EntityBasicUserInformation
        - `id` string, uuid — The unique identifier of the user.
        - `name` string — The full name of the user.
        - `email` string — The email address of the user.
        - `initials` string — The initials for the first and last name of the user.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `429` — Too Many Requests. For more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).
- `500` — Internal Server Error

---

[API](https://skmtc.dev/onetrust/apis/platform-access-management.md) · [All operations](https://skmtc.dev/onetrust/apis/platform-access-management/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/onetrust/platform-access-management/revisions/21de3aa0b170/schema)
