---
title: "Get resource relationships"
method: POST
path: "/relationships"
tags: ["Relationships"]
---

# Get resource relationships

`POST /relationships`

Retrieves the relationships/connections for a specific resource identified by its FRN.
Returns an array of connected resources with their full asset details including metadata,
state information, and relationship type.

Results are filtered based on the user's RBAC permissions - only connections to integrations
the user has access to will be returned.

## Request body

- object
  - `frn` string, required — The Firefly Resource Name (FRN) of the resource to query
  - `integrationId` string, required — The integration ID of the resource
  - `level` integer — Number of levels to traverse in the relationship graph

## Response `200`

Successfully retrieved relationships

- ResourceConnection[] — Array of connected resources with full asset details
  - `id` string, required — Unique identifier in format "integrationId:assetType:region:resourceId"
  - `frn` string, required — Firefly Resource Name
  - `assetId` string — Cloud provider's resource identifier (ARN for AWS)
  - `resourceId` string — Provider-specific resource ID
  - `integrationId` string, required — Integration ID of the connected resource
  - `accountId` string, required — Firefly account ID
  - `assetType` string, required — Type of the connected asset
  - `name` string — Resource name
  - `region` string — Cloud region
  - `provider` string — Cloud provider
  - `providerId` string — Cloud provider account ID
  - `providerType` 'cloud' | 'saas' | 'kubernetes' — Provider category
  - `providerSubType` string — Provider subcategory
  - `service` string — Cloud service name
  - `connectionType` string — Type of connection between resources
  - `hierarchy` string[], required — Hierarchy path of the resource in the relationship graph
  - `type` 'ASSET' | 'TRACE', required — Node type in the relationship graph
  - `hasOwnerTargets` boolean — Whether this resource has ownership targets
  - `hasOwnerSources` boolean — Whether this resource has ownership sources
  - `ownerTargetsList` string[] — List of resources this resource owns
  - `ownerSourcesList` string[] — List of resources that own this resource
  - `hasControllerTargets` boolean — Whether this resource has controller targets (Kubernetes)
  - `hasControllerSources` boolean — Whether this resource has controller sources (Kubernetes)
  - `state` 'unmanaged' | 'managed' | 'modified' | 'ghost' | 'iacIgnored' | 'child' — Current state of the resource
  - `prevState` string — Previous state of the resource
  - `iacType` string — Infrastructure as Code type
  - `isExcluded` boolean — Whether the resource is excluded from mutations
  - `exclusions` string[] — List of exclusion rule IDs applied to this resource
  - `firstSeen` string — When the resource was first discovered
  - `updateAt` string, date-time — Last update timestamp
  - `inventoryUpdateTime` string, date-time — Last inventory update time
  - `lastResourceStateChange` string, date-time — Last state change timestamp
  - `tags` string — JSON string of resource tags
  - `tagsList` string[] — Array of tags
  - `taggingStatus` 'NOT_SUPPORTED' | 'NOT_TAGGED' | 'TAGGED' — Tagging status
  - `consoleURL` string — Cloud provider console URL for the resource
  - `deleteCommand` string — CLI command to delete the resource
  - `stackId` string — Identifier of the stack where this resource is located if managed by Infrastructure as Code
  - `stackName` string — Name of the stack where this resource is located
  - `stackIds` string[] — List of identifiers of the stacks where this resource is located, if managed by multiple stacks
  - `stacks` object[]
    - `stackId` string — Identifier of the stack
    - `stackType` string — Type of the stack
    - `stackName` string — Name of the stack
  - `metaHash` string — Hash of the metadata of the resource
  - `prevSignature` string — Previous hash signature of the resource
  - `schemaVersion` integer — Terraform version of the resource's schema
  - `revisionsNumber` integer — Number of mutations revisions of the resource
  - `hasRevisions` boolean — Whether the resource has revisions
  - `isChild` boolean — Whether the resource is a child of another resource
  - `isLocked` boolean — Whether the resource is locked
  - `isEventDriven` boolean — Whether the latest resource configuration originated from an event
  - `isOutOfSync` boolean — Whether the resource configuration might be out of sync with the remote
  - `runId` string — Identifier of the run that created the resource
  - `accountName` string — Name of the Firefly account who owns this resource
  - `arn` string — ARN of the resource
  - `nonBijectionFRN` string — FRN of the resource

## Other responses

- `400` — Bad Request Error
- `401` — Unauthorized Error
- `403` — Forbidden - User does not have permission to access this resource
- `500` — Internal Server Error

---

[API](https://skmtc.net/firefly/apis/api-gateway.md) · [All operations](https://skmtc.net/firefly/apis/api-gateway/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/firefly/api-gateway/revisions/eea119b4113f/schema)
