Entity Relationship Types (Beta)

Use these operations to interact with entity relationship types in Cortex.

Required permissions

Create and Update Relationship Types: Your API key must have the Edit entities permission. Your tenant must also have the Entity relationships feature enabled.

Operations

List relationship types

get

List paginated relationship types

Authorizations
Query parameters
pageSizeinteger · int32Required

Number of results to return per page, between 1 and 1000. Default 250.

Default: 250
pageinteger · int32Required

Page number to return, 0-indexed. Default 0.

Default: 0
Responses
200
Successfully found entity relationship types
application/json
get
GET /api/v1/relationship-types HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "page": 1,
  "relationshipTypes": [
    {
      "allowCycles": false,
      "definitionLocation": "BOTH",
      "description": "Defines the component hierarchy",
      "destinationLabelPlural": "Parts",
      "destinationLabelSingular": "Part",
      "destinationNamePlural": "text",
      "destinationNameSingular": "text",
      "destinationsFilter": {
        "include": true,
        "types": [
          "text"
        ]
      },
      "inheritances": [
        {
          "inheritanceType": "NONE",
          "parameterTag": "text"
        }
      ],
      "isCortexManaged": false,
      "isSingleDestination": false,
      "isSingleSource": false,
      "name": "Component Hierarchy",
      "sourceLabelPlural": "Components",
      "sourceLabelSingular": "Component",
      "sourceNamePlural": "text",
      "sourceNameSingular": "text",
      "sourcesFilter": {
        "include": true,
        "types": [
          "text"
        ]
      },
      "tag": "component-hierarchy"
    }
  ],
  "total": 1,
  "totalPages": 1
}

Create relationship type

post

Create a relationship type

Authorizations
Body

Request to create or update a relationship type

allowCyclesbooleanRequired

Whether cyclical relationships are allowed

Example: false
createCatalogbooleanRequired

Whether to create a catalog page for this relationship type

Example: false
definitionLocationstring · enumRequired

Defines where a relationship can be configured in entity descriptors

Example: BOTHPossible values:
descriptionstringOptional

Optional description explaining the relationship type

Example: Defines the component hierarchy
destinationLabelPluralstringOptional

Plural label for destinations in the relationship

Example: Parts
destinationLabelSingularstringOptional

Singular label for destinations in the relationship

Example: Part
isSingleDestinationbooleanRequired

Whether an entity can have only one destination for this relationship type

Example: false
isSingleSourcebooleanRequired

Whether an entity can have only one source for this relationship type

Example: false
namestringRequired

Human-readable name for the relationship type

Example: Component Hierarchy
sourceLabelPluralstringOptional

Plural label for sources in the relationship

Example: Components
sourceLabelSingularstringOptional

Singular label for sources in the relationship

Example: Component
tagstringRequired

Unique identifier tag for the relationship type

Example: component-hierarchy
Responses
200
Successfully created relationship type
application/json
post
POST /api/v1/relationship-types HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 1395

"{\n                        \"name\": \"Component Hierarchy\",\n                        \"tag\": \"component-hierarchy\",\n                        \"description\": \"Defines the component hierarchy.\",\n                        \"definitionLocation\": \"BOTH\",\n                        \"isSingleSource\": true,\n                        \"sourcesFilter\": {\n                            \"include\": true,\n                            \"types\": [\"component\"]\n                        },\n                        \"isSingleDestination\": false,\n                        \"destinationsFilter\": {\n                            \"include\": true,\n                            \"types\": [\"service\", \"component]\n                        },\n                        \"inheritances\": [\n                            {\n                                \"parameterTag\": \"x-cortex-owners\",\n                                \"inheritanceType\": \"FALLBACK\"\n                            }\n                        ],\n                        \"allowCycles\": false,\n                        \"sourceLabelSingular\": \"Component\",\n                        \"sourceLabelPlural\": \"Components\",\n                        \"destinationLabelSingular\": \"Part\",\n                        \"destinationLabelPlural\": \"Parts\",\n                        \"createCatalog\": false\n                    }"
{
  "allowCycles": false,
  "definitionLocation": "BOTH",
  "description": "Defines the component hierarchy",
  "destinationLabelPlural": "Parts",
  "destinationLabelSingular": "Part",
  "destinationNamePlural": "text",
  "destinationNameSingular": "text",
  "destinationsFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "inheritances": [
    {
      "inheritanceType": "NONE",
      "parameterTag": "text"
    }
  ],
  "isCortexManaged": false,
  "isSingleDestination": false,
  "isSingleSource": false,
  "name": "Component Hierarchy",
  "sourceLabelPlural": "Components",
  "sourceLabelSingular": "Component",
  "sourceNamePlural": "text",
  "sourceNameSingular": "text",
  "sourcesFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "tag": "component-hierarchy"
}

Get a relationship type

get

List details for a relationship type

Authorizations
Path parameters
relationshipTypeTagstringRequired
Responses
200
Successfully found relationship type
application/json
get
GET /api/v1/relationship-types/{relationshipTypeTag} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "allowCycles": false,
  "definitionLocation": "BOTH",
  "description": "Defines the component hierarchy",
  "destinationLabelPlural": "Parts",
  "destinationLabelSingular": "Part",
  "destinationNamePlural": "text",
  "destinationNameSingular": "text",
  "destinationsFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "inheritances": [
    {
      "inheritanceType": "NONE",
      "parameterTag": "text"
    }
  ],
  "isCortexManaged": false,
  "isSingleDestination": false,
  "isSingleSource": false,
  "name": "Component Hierarchy",
  "sourceLabelPlural": "Components",
  "sourceLabelSingular": "Component",
  "sourceNamePlural": "text",
  "sourceNameSingular": "text",
  "sourcesFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "tag": "component-hierarchy"
}

Update relationship type

put

Update relationship type

Authorizations
Path parameters
relationshipTypeTagstringRequired
Body

Request to create or update a relationship type

allowCyclesbooleanRequired

Whether cyclical relationships are allowed

Example: false
createCatalogbooleanRequired

Whether to create a catalog page for this relationship type

Example: false
definitionLocationstring · enumRequired

Defines where a relationship can be configured in entity descriptors

Example: BOTHPossible values:
descriptionstringOptional

Optional description explaining the relationship type

Example: Defines the component hierarchy
destinationLabelPluralstringOptional

Plural label for destinations in the relationship

Example: Parts
destinationLabelSingularstringOptional

Singular label for destinations in the relationship

Example: Part
isSingleDestinationbooleanRequired

Whether an entity can have only one destination for this relationship type

Example: false
isSingleSourcebooleanRequired

Whether an entity can have only one source for this relationship type

Example: false
namestringRequired

Human-readable name for the relationship type

Example: Component Hierarchy
sourceLabelPluralstringOptional

Plural label for sources in the relationship

Example: Components
sourceLabelSingularstringOptional

Singular label for sources in the relationship

Example: Component
tagstringRequired

Unique identifier tag for the relationship type

Example: component-hierarchy
Responses
200
Successfully updated relationship type
application/json
put
PUT /api/v1/relationship-types/{relationshipTypeTag} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 532

{
  "allowCycles": false,
  "createCatalog": false,
  "definitionLocation": "BOTH",
  "description": "Defines the component hierarchy",
  "destinationLabelPlural": "Parts",
  "destinationLabelSingular": "Part",
  "destinationsFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "inheritances": [
    {
      "inheritanceType": "NONE",
      "parameterTag": "text"
    }
  ],
  "isSingleDestination": false,
  "isSingleSource": false,
  "name": "Component Hierarchy",
  "sourceLabelPlural": "Components",
  "sourceLabelSingular": "Component",
  "sourcesFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "tag": "component-hierarchy"
}
{
  "allowCycles": false,
  "definitionLocation": "BOTH",
  "description": "Defines the component hierarchy",
  "destinationLabelPlural": "Parts",
  "destinationLabelSingular": "Part",
  "destinationNamePlural": "text",
  "destinationNameSingular": "text",
  "destinationsFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "inheritances": [
    {
      "inheritanceType": "NONE",
      "parameterTag": "text"
    }
  ],
  "isCortexManaged": false,
  "isSingleDestination": false,
  "isSingleSource": false,
  "name": "Component Hierarchy",
  "sourceLabelPlural": "Components",
  "sourceLabelSingular": "Component",
  "sourceNamePlural": "text",
  "sourceNameSingular": "text",
  "sourcesFilter": {
    "include": true,
    "types": [
      "text"
    ]
  },
  "tag": "component-hierarchy"
}

Delete a relationship type

delete

Delete a relationship type

Authorizations
Path parameters
relationshipTypeTagstringRequired
Responses
200
Successfully deleted relationship type
delete
DELETE /api/v1/relationship-types/{relationshipTypeTag} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*

No content

Last updated

Was this helpful?