---
title: "Find the shortest relationship path between two companies"
method: POST
path: "/api/v1/ackdb/entities/{company}/graph/path"
tags: ["ackDB"]
---

# Find the shortest relationship path between two companies

`POST /api/v1/ackdb/entities/{company}/graph/path`

## Request

- Base URL: `http://localhost:3009`
- URL: `http://localhost:3009/api/v1/ackdb/entities/{company}/graph/path`
- Auth: HTTP bearer

## Path parameters

- `company` string, required

## Request body

- object
  - `targetCompany` string, required
  - `relationshipTypes` string[]
  - `maxDepth` integer
  - `asOf` string, date-time

## Response `200`

Shortest path, or found=false

- object
  - `data` AckdbCompanyRelationshipPathResult, required
    - `found` boolean, required
    - `requestedCompany` AckdbCompanyGraphCompany, required
      - `entityId` string, required
      - `name` string, nullable, required
      - `domain` string, nullable, required
      - `status` string, required
      - `graphOnly` boolean, required
    - `canonicalCompany` AckdbCompanyGraphCompany, required
      - `entityId` string, required
      - `name` string, nullable, required
      - `domain` string, nullable, required
      - `status` string, required
      - `graphOnly` boolean, required
    - `targetCompany` AckdbCompanyGraphCompany, required
      - `entityId` string, required
      - `name` string, nullable, required
      - `domain` string, nullable, required
      - `status` string, required
      - `graphOnly` boolean, required
    - `companies` AckdbCompanyGraphCompany[], required
      - `entityId` string, required
      - `name` string, nullable, required
      - `domain` string, nullable, required
      - `status` string, required
      - `graphOnly` boolean, required
    - `companyRelationships` AckdbCompanyRelationship[], required
      - `relationshipId` string, required
      - `class` string, required
      - `childCompany` AckdbCompanyGraphCompany, required
        - `entityId` string, required
        - `name` string, nullable, required
        - `domain` string, nullable, required
        - `status` string, required
        - `graphOnly` boolean, required
      - `parentCompany` AckdbCompanyGraphCompany, required
        - `entityId` string, required
        - `name` string, nullable, required
        - `domain` string, nullable, required
        - `status` string, required
        - `graphOnly` boolean, required
      - `relationshipType` string, required
      - `childToParentLabel` string, required
      - `parentToChildLabel` string, required
      - `state` 'active' | 'ended' | 'retracted', required
      - `effectiveFrom` string, date-time, required
      - `effectiveTo` string, date-time, nullable, required
      - `retractedAt` string, date-time, nullable, required
      - `provenance` AckdbCompanyRelationshipProvenance, required
        - `source` string, required
        - `workflow` string
        - `externalRecordId` string
        - `evidenceUrl` string, uri
        - `observedAt` string, date-time
        - `metadata` object
      - `createdBy` string, nullable, required
      - `endedBy` string, nullable, required
      - `endedReason` string, nullable, required
      - `retractedBy` string, nullable, required
      - `retractedReason` string, nullable, required
      - `createdEventId` string, nullable, required
      - `endedEventId` string, nullable, required
      - `retractedEventId` string, nullable, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
    - `hopCount` integer, nullable, required

## Other responses

- `422`: Graph cap exceeded
- `503`: Graph read exceeded its transaction deadline

---

[API](https://skmtc.dev/floqer/apis/floqer-public-api.md) - [All operations](https://skmtc.dev/floqer/apis/floqer-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/floqer/apis/floqer-public-api/revisions/fce50dc07b20?raw)
