EvoHub DocsEvoHub Docs Sign in

Get an account's architecture

Use with AI
View as MarkdownThis page as plain text, for pasting into an AI tool Open in ClaudeAsk Claude questions about this page Open in ChatGPTAsk ChatGPT questions about this page
Connect to Cursor / VS Code / ClaudeSearch and read these docs from your AI tool (MCP server)

MCP server URL

https://docs.evohub.io/mcp

Claude Code

claude mcp add --transport http evohub-docs https://docs.evohub.io/mcp

Claude (claude.ai and Claude Desktop): Settings → Connectors → Add custom connector, and paste the URL above.

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "evohub-docs": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://docs.evohub.io/mcp"
      ]
    }
  }
}

Cursor — ~/.cursor/mcp.json

{
  "mcpServers": {
    "evohub-docs": {
      "url": "https://docs.evohub.io/mcp"
    }
  }
}

VS Code — .vscode/mcp.json

{
  "servers": {
    "evohub-docs": {
      "type": "http",
      "url": "https://docs.evohub.io/mcp"
    }
  }
}
GET/api/v1/catalog/connections/{id}/architecture

One region of the account laid out from what it reported: each network (VPC) with its internet gateway, peerings and subnets (public or private, and the NAT gateway a private one leaves through), what runs in each subnet, what spans the network, what sits outside any network, the security groups, and the links between them. A node lists the admin ports its security groups open to the whole internet.

Requires the identity:cloudaccount:read and catalog:resource:read scopes.

Authorization

Any one of:

Parameters

Path parameters

  • id string required
    The cloud account's ID.
    Example: con_7d9f1b3a5c7e9a2c4e6b8d0f2a4c6e8b

Query parameters

  • region string
    The region to lay out. regions in the answer lists those with resources.
    Example: eu-central-1

Responses

200

The architecture.

Content type: application/json

Type: object

  • data Architecture
    Show Architecture properties
    • connection_id string
    • provider string
    • account_id string
    • region string
    • regions array of object
    • vpcs array of object
      Each network with its internet gateway, subnets, what spans it and its peerings.
    • outside array of object
      What sits in no network, such as buckets.
    • security_groups array of object
    • links array of object
      traffic, egress, internet and allows links between nodes.
    • links_truncated boolean

400

The request is not valid: a field or filter value is wrong (VALIDATION_ERROR, with a sentence saying what), the body is not the expected JSON or carries an unknown field (INVALID_BODY), the cursor is not one this list gave (INVALID_CURSOR), a binding names a service that does not exist (UNKNOWN_COMPONENT), or a PATCH tries to change a slug (SLUG_IMMUTABLE).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: NOT_FOUND
    • message string required
      Example: not found
    • request_id string

401

No API key was sent, or it is unknown, revoked or expired (UNAUTHORIZED).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: NOT_FOUND
    • message string required
      Example: not found
    • request_id string

403

The key lacks a scope this endpoint needs (FORBIDDEN).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: NOT_FOUND
    • message string required
      Example: not found
    • request_id string

404

Nothing with this ID (or slug) exists in the organization (NOT_FOUND).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: NOT_FOUND
    • message string required
      Example: not found
    • request_id string

429

Too many requests (RATE_LIMITED). Wait for Retry-After seconds.

Headers

  • Retry-After integer
    Seconds to wait before retrying.

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: NOT_FOUND
    • message string required
      Example: not found
    • request_id string

500

Something went wrong on EvoHub's side (INTERNAL_ERROR). Retry later.

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: NOT_FOUND
    • message string required
      Example: not found
    • request_id string

Example request

curl -X GET 'https://evohub.io/api/v1/catalog/connections/con_7d9f1b3a5c7e9a2c4e6b8d0f2a4c6e8b/architecture' \
  -H 'Authorization: Bearer <TOKEN>'