---
title: "Check whether a set of capabilities works together"
method: POST
path: "/api/v1/compat/check"
tags: ["Compatibility"]
---

# Check whether a set of capabilities works together

`POST /api/v1/compat/check`

## Request

- Base URL: `https://api.daystruct.ai`
- URL: `https://api.daystruct.ai/api/v1/compat/check`
- Auth: one of:
  - none
  - HTTP bearer

Send capabilities (id and semver range, up to 25) or a bundle reference (bundle@latest-verified or bundle@x.y.z), not both. Minimal runtime/platform example: {capabilities:[{id:'@daystruct/security-gitleaks',range:'1.0.0'}],project:{runtime:{node:'24.20.0'},platform:'linux'}}. Use your actual runtime/platform. This can produce project-checked, covering only supplied fields, not execution; include supported dependency fields when relevant. Never send source code. Optionally add a verifyReportId from a passing local verify of this exact set. Returns resolved versions/digests, conflicts, advisories, licensing and verified-lock memberships. Membership alone does not make your project verified. Public; no account needed and no credits charged.

## Request body

- object
  - `capabilities` object[]
    - `id` string, required
    - `range` string
  - `bundle` string
  - `project` object: Project manifest: runtime and declared packages
  - `verifyReportId` string

## Response `200`

Resolved set, conflicts, advisories, member licensing, verified-lock memberships and check scope

## Other responses

- `400`: Malformed request
- `404`: Unknown capability or bundle
- `429`: Rate limited

---

[API](https://skmtc.dev/daystruct/apis/daystruct-api.md) · [All operations](https://skmtc.dev/daystruct/apis/daystruct-api/llms.txt) · [OpenAPI document](https://skmtc.dev/daystruct/apis/daystruct-api/revisions/8cd3c7f60e18?raw)
