LogoLogo
Login to CortexBook a DemoCortex Academycortex.ioCortex Status
  • Cortex Docs
  • Cortex Quick Start
  • Ingesting data into Cortex
    • Managing Entities
      • Adding entities
        • Add services
        • Add domains
        • Add teams
        • Add custom entity types
        • Defining dependencies
      • Entity details page
      • Defining ownership
      • Defining relationship types
      • Grouping entities
      • Adding external documentation
      • Adding Deploy data
      • Adding custom data
      • Viewing discovered entities
      • Archiving entities
      • Relationship graph
      • Using On-call Assistant for incidents
      • Managing Terraform infra in Cortex
    • Managing Catalogs
    • Integrations
      • Internally hosted integrations
      • ArgoCD
      • AWS
      • Azure DevOps
      • Azure Resources
      • BambooHR
      • Bitbucket
      • BugSnag
      • Buildkite
      • Checkmarx
      • CircleCI
      • ClickUp
      • Codecov
      • Coralogix
      • Custom webhook integrations
      • Datadog
      • Dynatrace
      • Entra ID (Azure AD)
      • FireHydrant
      • GitHub
      • GitLab
      • Google
      • Grafana
      • incident.io
      • Instana
      • Jenkins
      • Jira
      • Kubernetes
      • LaunchDarkly
      • Lightstep
      • Mend
      • Microsoft Teams
      • New Relic
      • Okta
      • Opsgenie
      • PagerDuty
      • Prometheus
      • Rollbar
      • Rootly
      • Sentry
      • Semgrep
      • ServiceNow
      • Slack
      • Snyk
      • SonarQube
      • Splunk Observability Cloud (SignalFx)
      • Splunk On-Call (VictorOps)
      • Sumo Logic
      • Veracode
      • Wiz
      • Workday
      • xMatters
  • Scorecards
    • Initiatives and Action items
      • Creating issues based on Initiatives
    • Scorecard rule exemptions
    • Scorecard rule filters
    • Scorecard examples
    • Scorecards as code
  • Reports
    • Executive report
    • All Scorecards report
    • Bird's eye report
    • Progress report
    • Report card
  • Eng Intelligence
    • Custom Metrics
    • Jira Metrics
    • Metrics Explorer (Beta)
    • Velocity Dashboard (Beta)
  • Cortex Query Language (CQL)
    • Running and saving CQL queries
    • Using CQL reports
    • Using JQ in Cortex
  • Workflows
    • Creating a Workflow
      • Workflows as code
    • Blocks
    • Running a Workflow
    • Registering a Scaffolder template
      • Scaffolder advanced usage
    • Using a Workflow to sync in ArgoCD
    • Kicking off a Jenkins pipeline in a Workflow
    • Calling internal service endpoints in a Workflow
  • Plugins
    • Creating a plugin
      • Creating a plugin proxy
    • Migrating Backstage plugins to Cortex
  • Engineering homepage
  • Workspace Settings
    • Using GitOps for Cortex
      • GitOps logs
    • Managing users
      • Roles and permissions
        • Custom roles
        • Team ownership entity editing
      • Configuring SSO
        • Microsoft Entra ID
        • Google
        • Other OIDC providers
        • Okta
          • Okta SCIM
      • Configuring identity mappings
      • Onboarding management
    • API keys, secrets, and tokens
      • Secrets
      • Personal tokens
    • Audit logs
    • Entity settings
      • Data verification
      • Auto archiving entities
    • IP allowlist
    • Notifications
      • Notification logs
    • Customizing your workspace
    • Using search in Cortex
  • Cortex API
    • REST API operations
      • API Keys
      • Audit Logs
      • Catalog Entities
      • Custom Data
        • Custom Data (Advanced)
      • Custom Events
      • Custom Metrics
      • Dependencies
      • Deploys
      • Discovery Audit
      • Docs
      • Eng Intel: User Labels
      • Entity Relationship Types (Beta)
      • Entity Relationships (Beta)
      • Entity Types
      • GitOps Logs
      • Groups
      • Initiatives
      • Integrations APIs
        • Azure Active Directory (Entra ID) API
        • Azure Resources API
        • AWS API
        • Azure DevOps API
        • CircleCI API
        • Coralogix API
        • Datadog API
        • GitHub API
        • GitLab API
        • incident.io API
        • LaunchDarkly API
        • New Relic API
        • PagerDuty API
        • Prometheus API
        • SonarQube API
      • IP Allowlist
      • Notification Logs
      • On call
      • Packages
      • Plugins
      • Queries
      • SCIM
      • Scorecards
      • Secrets
      • Team Hierarchies
      • Teams
      • Workflows
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. Cortex API
  2. REST API operations

Entity Relationship Types (Beta)

Last updated 1 month ago

Was this helpful?

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
429
The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.
application/problem+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
}

Get a relationship type

get

List details for a relationship type

Authorizations
Path parameters
relationshipTypeTagstringRequired
Responses
200
Successfully found relationship type
application/json
404
Relationship type not found
application/json
429
The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.
application/problem+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"
}

Delete a relationship type

delete

Delete a relationship type

Authorizations
Path parameters
relationshipTypeTagstringRequired
Responses
200
Successfully deleted relationship type
204
No Content
400
Validation error deleting relationship type
application/json
429
The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.
application/problem+json
delete
DELETE /api/v1/relationship-types/{relationshipTypeTag} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*

No content

  • Required permissions
  • Operations
  • GETList relationship types
  • POSTCreate relationship type
  • GETGet a relationship type
  • PUTUpdate relationship type
  • DELETEDelete a relationship type

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
400
Validation error creating relationship type
application/json
429
The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.
application/problem+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"
}

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
400
Validation error updating relationship type
application/json
429
The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.
application/problem+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"
}