---
title: "GET /experimental/context/lineages/resolve"
method: GET
path: "/experimental/context/lineages/resolve"
tags: ["Context"]
---

# GET /experimental/context/lineages/resolve

`GET /experimental/context/lineages/resolve`

Resolves a context lineage by coordinates: a source (provider + owner/repo; for tessl-registry, owner is the workspace and repo is the plugin) plus exactly one of slug or occurrence path. `kind` applies only to slug resolution (slug is unique per source and kind); it is ignored for path resolution, since an occurrence path already identifies exactly one lineage regardless of kind. Invalid combinations are rejected with 400.

## Query parameters

- `provider` string, required
- `owner` string
- `repo` string
- `slug` string
- `path` string
- `kind` union
  - 'skill'
  - 'plugin'

## Response `200`

Default Response

- object
  - `links` object, required
    - `self` string, uri, required
  - `data` object, required
    - `id` string, uuid, required
    - `type` 'context-lineage', required
    - `attributes` object, required
      - `kind` string, required
      - `slug` string, required
      - `name` string, nullable, required
      - `visibility` union, required
        - 'public'
        - 'private'
      - `coordinates` object, required
        - `provider` string, required
        - `sourceUrl` string, uri, required
        - `owner` string, nullable, required
        - `repo` string, nullable, required
        - `registry` object, nullable, required
          - `workspaceName` string, required
          - `tileName` string, required
        - `path` string, required
        - `ref` string, required
        - `occurrenceType` string, required
      - `head` object, nullable, required
        - `versionId` string, uuid, required
        - `fingerprintAlgo` string, required
        - `fingerprint` string, required
        - `bodyFingerprint` string, nullable, required
        - `bodyFingerprintAlgo` string, nullable, required
        - `name` string, nullable, required
        - `description` string, nullable, required
        - `parseError` object, nullable, required
          - `stage` string, required
          - `message` string, required
      - `canonical` object, nullable, required
        - `lineageId` string, uuid, required
        - `electedAt` string, date-time, required
        - `electionReason` string, required
      - `liveness` object, required
        - `liveOccurrenceCount` integer, required
        - `firstSeenAt` string, date-time, nullable, required
        - `lastSeenAt` string, date-time, nullable, required
        - `earliestKnownAt` string, date-time, nullable, required
        - `gone` boolean, required
        - `goneAt` string, date-time, nullable, required
        - `lastSeenPath` string, nullable, required
        - `lastSeenRef` string, nullable, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required

## Other responses

- `404` — Not Found
- `500` — Internal Server Error

---

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