Gravitee · Schema
Gravitee API
Represents an API definition managed by the Gravitee APIM platform, including its configuration, lifecycle state, entrypoints, and endpoints.
API GatewayAPI ManagementAccess ManagementIdentityEvent-DrivenEvent ManagementKafka GatewayKafkaMQTTGraphQLgRPCAI GatewayMCPA2ALLM ProxyMulti-Gateway FederationDeveloper PortalOpen SourceApache 2.0
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique identifier for the API. |
| name | string | Name of the API. |
| description | string | Description of the API. |
| version | string | Version of the API definition. |
| definitionVersion | string | The Gravitee definition version. |
| type | string | The type of API: PROXY for synchronous REST/HTTP, MESSAGE for event-driven/async. |
| state | string | Current lifecycle state of the API on the gateway. |
| visibility | string | Visibility of the API in the developer portal. |
| lifecycleState | string | Publication lifecycle state of the API. |
| tags | array | Sharding tags for gateway routing. |
| labels | array | Labels for categorization and filtering. |
| entrypoints | array | API entrypoints defining how consumers connect (v4 APIs). |
| endpoints | array | Backend endpoints the gateway proxies to. |
| deployedAt | string | Timestamp of the last deployment to the gateway. |
| createdAt | string | Timestamp when the API was created. |
| updatedAt | string | Timestamp when the API was last updated. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://gravitee.io/schemas/gravitee/api.json",
"title": "Gravitee API",
"description": "Represents an API definition managed by the Gravitee APIM platform, including its configuration, lifecycle state, entrypoints, and endpoints.",
"type": "object",
"required": ["name", "version", "definitionVersion"],
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for the API."
},
"name": {
"type": "string",
"description": "Name of the API.",
"minLength": 1
},
"description": {
"type": "string",
"description": "Description of the API."
},
"version": {
"type": "string",
"description": "Version of the API definition."
},
"definitionVersion": {
"type": "string",
"description": "The Gravitee definition version.",
"enum": ["V2", "V4"]
},
"type": {
"type": "string",
"description": "The type of API: PROXY for synchronous REST/HTTP, MESSAGE for event-driven/async.",
"enum": ["PROXY", "MESSAGE"]
},
"state": {
"type": "string",
"description": "Current lifecycle state of the API on the gateway.",
"enum": ["INITIALIZED", "STOPPED", "STARTED", "CLOSED"]
},
"visibility": {
"type": "string",
"description": "Visibility of the API in the developer portal.",
"enum": ["PUBLIC", "PRIVATE"]
},
"lifecycleState": {
"type": "string",
"description": "Publication lifecycle state of the API.",
"enum": ["CREATED", "PUBLISHED", "UNPUBLISHED", "DEPRECATED", "ARCHIVED"]
},
"tags": {
"type": "array",
"description": "Sharding tags for gateway routing.",
"items": {
"type": "string"
}
},
"labels": {
"type": "array",
"description": "Labels for categorization and filtering.",
"items": {
"type": "string"
}
},
"entrypoints": {
"type": "array",
"description": "API entrypoints defining how consumers connect (v4 APIs).",
"items": {
"$ref": "#/$defs/Entrypoint"
}
},
"endpoints": {
"type": "array",
"description": "Backend endpoints the gateway proxies to.",
"items": {
"$ref": "#/$defs/Endpoint"
}
},
"deployedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp of the last deployment to the gateway."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp when the API was created."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp when the API was last updated."
}
},
"$defs": {
"Entrypoint": {
"type": "object",
"description": "Defines how consumers connect to the API.",
"properties": {
"type": {
"type": "string",
"description": "Entrypoint connector type (e.g., http-proxy, websocket, sse)."
},
"configuration": {
"type": "object",
"description": "Entrypoint-specific configuration.",
"additionalProperties": true
}
}
},
"Endpoint": {
"type": "object",
"description": "Defines a backend target the gateway proxies requests to.",
"properties": {
"name": {
"type": "string",
"description": "Name of the endpoint."
},
"target": {
"type": "string",
"description": "Target URL for the backend service."
},
"type": {
"type": "string",
"description": "Endpoint connector type."
}
}
}
}
}