WunderGraph · Schema

WunderGraph Cosmo Subgraph

A Subgraph is an isolated GraphQL schema that can be independently deployed and managed, composing into federated graphs via label matching.

FederationGraphQLManagementSchema Registry

Properties

Name Type Description
id string Unique identifier for the subgraph.
name string The name of the subgraph.
namespace string The namespace the subgraph belongs to.
routingUrl string The URL where the subgraph service is hosted.
labels array Labels attached to the subgraph for matching to federated graphs.
subscriptionUrl string URL for WebSocket-based GraphQL subscriptions if different from the routing URL.
subscriptionProtocol string The subscription transport protocol.
lastPublishedAt string When the schema was last published.
readme string Readme description of the subgraph.
createdAt string When the subgraph was created.
updatedAt string When the subgraph was last updated.
View JSON Schema on GitHub

JSON Schema

subgraph.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/api-evangelist/wundergraph/blob/main/json-schema/subgraph.json",
  "title": "WunderGraph Cosmo Subgraph",
  "description": "A Subgraph is an isolated GraphQL schema that can be independently deployed and managed, composing into federated graphs via label matching.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the subgraph."
    },
    "name": {
      "type": "string",
      "description": "The name of the subgraph."
    },
    "namespace": {
      "type": "string",
      "description": "The namespace the subgraph belongs to."
    },
    "routingUrl": {
      "type": "string",
      "format": "uri",
      "description": "The URL where the subgraph service is hosted."
    },
    "labels": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "description": "Labels attached to the subgraph for matching to federated graphs."
    },
    "subscriptionUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL for WebSocket-based GraphQL subscriptions if different from the routing URL."
    },
    "subscriptionProtocol": {
      "type": "string",
      "enum": ["ws", "sse", "sse_post"],
      "description": "The subscription transport protocol."
    },
    "lastPublishedAt": {
      "type": "string",
      "format": "date-time",
      "description": "When the schema was last published."
    },
    "readme": {
      "type": "string",
      "description": "Readme description of the subgraph."
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "When the subgraph was created."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "When the subgraph was last updated."
    }
  }
}