---
title: "Search diagrams and components"
method: POST
path: "/clouddiagrams/v1/scheme/search"
tags: ["Cloud Diagrams"]
---

# Search diagrams and components

`POST /clouddiagrams/v1/scheme/search`

Full-text search across diagram layers, components by name, and components
by property values. Returns three result categories: diagram (matching layers), component
(matching components by name), and prop (matching components by property values).

## Request body

- CloudDiagramsSearchRequest — Request body for searching diagrams and components.
  - `query` string, required — Search query string.
  - `ss_id` string — Limit search to components within this layer.
  - `from` integer — Pagination offset (default 0).
  - `size` integer — Maximum number of results per category (default 20).

## Response `200`

OK - Search results returned.

- CloudDiagramsSearchResponse — Search results grouped into three categories.
  - `scheme` CloudDiagramSchemeSearchItem[] — Diagram layers (cloud accounts) matching the query.
    - `_id` string, required — Layer ID.
    - `account_name` string — Cloud account name.
    - `scheme_id` string — Parent diagram ID.
    - `ss_id` string — Layer ID (same as _id).
    - `scheme` string — Parent diagram name.
    - `status` string — Import/sync status.
    - `name` string — Layer name.
    - `type` 'statussheet', required — Component type — always "statussheet" for this category.
  - `component` CloudDiagramComponentSearchItem[] — Components matching the query by name.
    - `_id` string, required — Component ID.
    - `account_name` string — Cloud account name.
    - `icon` string — Component icon identifier.
    - `color` string — Component color.
    - `scheme_id` string — Parent diagram ID.
    - `ss_id` string — Layer ID.
    - `name` string — Component name.
    - `type` 'attachment' | 'combiner' | 'element' | 'group' | 'link' | 'node' | 'note', required — Component type.
    - `node_type` 'app_component' | 'app_group' | 'app_link' | 'attachment' | 'group' | 'host' | 'link' | 'service' — Node type.
    - `group_type` string — Group type (for group components).
    - `props` object — Component properties. For the "prop" category contains the matched property key-value pairs.
      - `service_type` string — Cloud service type (e.g. AWS::EC2::Instance).
  - `prop` CloudDiagramComponentSearchItem[] — Components matching the query by property values.
    - `_id` string, required — Component ID.
    - `account_name` string — Cloud account name.
    - `icon` string — Component icon identifier.
    - `color` string — Component color.
    - `scheme_id` string — Parent diagram ID.
    - `ss_id` string — Layer ID.
    - `name` string — Component name.
    - `type` 'attachment' | 'combiner' | 'element' | 'group' | 'link' | 'node' | 'note', required — Component type.
    - `node_type` 'app_component' | 'app_group' | 'app_link' | 'attachment' | 'group' | 'host' | 'link' | 'service' — Node type.
    - `group_type` string — Group type (for group components).
    - `props` object — Component properties. For the "prop" category contains the matched property key-value pairs.
      - `service_type` string — Cloud service type (e.g. AWS::EC2::Instance).

## Other responses

- `400` — Bad Request - The server cannot process the request, often due to a malformed request.
- `401` — Unauthorized - Invalid API key.
- `403` — Forbidden - The client is not authorized to perform the request.

---

[API](https://skmtc.dev/doit/apis/doit-cloud-intelligence.md) · [All operations](https://skmtc.dev/doit/apis/doit-cloud-intelligence/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/doit/doit-cloud-intelligence/revisions/9416402fc119/schema)
