GraphQL API Reference
Self-generated API documentation for Meshery’s GraphQL API. The API can be explored interactively using the GraphQL Playground. Documentation is generated from Meshery’s GraphQL schema. Each table below documents a GraphQL type.
WARNING: Fields that are deprecated are marked with {warning-solid}.
Query type
The Query type contains the API’s top-level entry points for all executable queries.
Query.connectToNats
Check is Meshey Server is connected to NATS, if not connect to the NATS Server.
Returns Status!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
Query.deployMeshsync
Check the Meshsync Status and deploy if not enabled.
Returns Status!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
what to do in-order to deploy meshsync on multiple clusters/contexts. |
Query.fetchAllResults
Query for fetching all results for profile ID.
Returns PerfPageResult!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
PageFilter! |
Query.fetchFilterCatalogContent
Query for getting Filter Catalog from remote provider.
Returns [CatalogFilter!]!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
CatalogSelector |
Query.fetchPatternCatalogContent
Query for getting Pattern Catalog from remote provider.
Returns [CatalogPattern!]!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
CatalogSelector |
Query.fetchPatterns
Query for fetching all patterns with selector.
Returns PatternPageResult!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
PageFilter! |
Query.fetchResults
Query for fetching all results for profile ID.
Returns PerfPageResult!.
Arguments
| Name | Type | Description |
|---|---|---|
profileID |
String! |
|
selector |
PageFilter! |
Query.fetchTelemetryComponents
Query for telemetry components.
Returns [TelemetryComp]!.
Arguments
| Name | Type | Description |
|---|---|---|
contexts |
[String!] |
Query.getAvailableAddons
Query details about Addons available (Eg. Prometheus and Grafana).
Returns [AddonList!]!.
Arguments
| Name | Type | Description |
|---|---|---|
filter |
ServiceMeshFilter |
Select Mesh Type. |
Query.getAvailableNamespaces
Query available Namesapces in your cluster.
Returns [NameSpace!]!.
Arguments
| Name | Type | Description |
|---|---|---|
k8sClusterIDs |
[String!] |
Query.getClusterResources
Query for getting cluster info.
Returns ClusterResources!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextIDs |
[String!] |
|
namespace |
String! |
Query.getControlPlanes
Query Control Plane data for a Service Mesh (or all) in your cluster.
Returns [ControlPlane!]!.
Arguments
| Name | Type | Description |
|---|---|---|
filter |
ServiceMeshFilter |
Filter Control Plane Query. |
Query.getDataPlanes
Query Data Plane information for a Service Mesh (or all) in your cluster.
Returns [DataPlane!]!.
Arguments
| Name | Type | Description |
|---|---|---|
filter |
ServiceMeshFilter |
Filter Control Plane Query. |
Query.getKubectlDescribe
Query for getting kubectl describe details with meshkit.
Returns KctlDescribeDetails!.
Arguments
| Name | Type | Description |
|---|---|---|
kind |
String! |
|
name |
String! |
|
namespace |
String! |
Query.getMeshModelSummary
Query for meshmodel summary.
Returns MeshModelSummary!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
MeshModelSummarySelector! |
Query.getMeshsyncStatus
Check the Meshsync Status.
Returns OperatorControllerStatus!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
Query.getNatsStatus
Check is Meshey Server is connected to NATS.
Returns OperatorControllerStatus!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
Query.getOperatorStatus
Query status of Meshery Operator in your cluster.
Returns OperatorStatus.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
Query.getPerfResult
Query for performance result.
Returns MesheryResult.
Arguments
| Name | Type | Description |
|---|---|---|
id |
ID! |
Query.getPerformanceProfiles
Query for fetching all results for profile ID.
Returns PerfPageProfiles!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
PageFilter! |
Query.resyncCluster
Query to resync the cluster discovery.
Returns Status!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
|
selector |
ReSyncActions |
Selector to control several resync actions. |
Mutation type
The Mutation type contains all the mutations you can execute.
All mutations receive their arguments in a single input object named input.
Mutation.changeAdapterStatus
Change the Adapter Status.
Input type: AdapterStatusInput
Arguments
| Name | Type | Description |
|---|---|---|
adapter |
String! |
Name of the adapter to be deployed. |
targetPort |
String! |
The port on which adapter will be deployed. |
targetStatus |
Status! |
Desired status for Meshery Operator. |
Returns Status!.
Mutation.changeOperatorStatus
Change the Operator Status.
Input type: OperatorStatusInput
Arguments
| Name | Type | Description |
|---|---|---|
contextID |
String! |
|
targetStatus |
Status! |
Desired status for Meshery Operator. |
Returns Status!.
Subscription type
The Subscription type contains all the Subscriptions you can listen to.
Subscription.listenToAddonState
Listen to changes in status of Addons available (Eg. Prometheus and Grafana).
Returns [AddonList!]!.
Arguments
| Name | Type | Description |
|---|---|---|
filter |
ServiceMeshFilter |
Select Mesh Type. |
Subscription.listenToControlPlaneState
Listen to changes in Control Plane data for a Service Mesh (or all) in your cluster.
Returns [ControlPlane!]!.
Arguments
| Name | Type | Description |
|---|---|---|
filter |
ServiceMeshFilter |
Filter Control Plane Query. |
Subscription.listenToDataPlaneState
Listen to changes in Data Plane data for a Service Mesh (or all) in your cluster.
Returns [DataPlane!]!.
Arguments
| Name | Type | Description |
|---|---|---|
filter |
ServiceMeshFilter |
Filter Control Plane Query. |
Subscription.listenToMeshSyncEvents
Listen to changes in the list of available Namesapces in your cluster.
Returns OperatorControllerStatusPerK8sContext.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextIDs |
[String!] |
Subscription.listenToOperatorState
Listen to changes in status of Meshery Operator in your cluster.
Returns OperatorStatusPerK8sContext.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextIDs |
[String!] |
Subscription.subscribeBrokerConnection
Listen to changes in Broker (NATS) Connection.
Returns Boolean!.
Subscription.subscribeClusterResources
Returns ClusterResources!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextIDs |
[String!] |
|
namespace |
String! |
Subscription.subscribeConfiguration
Returns ConfigurationPage!.
Arguments
| Name | Type | Description |
|---|---|---|
applicationSelector |
PageFilter! |
|
filterSelector |
PageFilter! |
|
patternSelector |
PageFilter! |
Subscription.subscribeK8sContext
Returns K8sContextsPage!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
PageFilter! |
Subscription.subscribeMeshModelSummary
Returns MeshModelSummary!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
MeshModelSummarySelector! |
Subscription.subscribeMeshSyncEvents
Listen to the events that MeshSync is sending through Meshery Broker. Note: It does not listen to the changes in meshery database, but to meshsync events.
Returns MeshSyncEvent!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextIDs |
[String!] |
Subscription.subscribeMesheryControllersStatus
Listen to changes in the status of meshery controllers.
Returns [MesheryControllersStatusListItem!]!.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextIDs |
[String!] |
Subscription.subscribePerfProfiles
Listen to changes in Performance Profiles.
Returns PerfPageProfiles!.
Arguments
| Name | Type | Description |
|---|---|---|
selector |
PageFilter! |
Subscription.subscribePerfResults
Listen to all results for profile ID.
Returns PerfPageResult!.
Arguments
| Name | Type | Description |
|---|---|---|
profileID |
String! |
|
selector |
PageFilter! |
Object types
Object types represent the resources that the Meshery GraphQL API can return.
They contain fields. Each field has its own type, which will either be one of the
basic GraphQL scalar types
(e.g.: String or Boolean) or other object types. Fields may have arguments.
Fields with arguments are exactly like top-level queries, and are listed beneath
the table of fields for each object type.
For more information, see
Object Types and Fields
on graphql.org.
AddonList
Deatils about the Addon Component.
Fields
| Name | Type | Description |
|---|---|---|
name |
String! |
Name. |
owner |
String! |
Owner. |
ApplicationPage
Fields
| Name | Type | Description |
|---|---|---|
applications |
[ApplicationResult] |
|
page |
Int! |
|
page_size |
Int! |
|
total_count |
Int! |
ApplicationResult
Fields
| Name | Type | Description |
|---|---|---|
application_file |
String! |
|
created_at |
String |
|
id |
ID! |
|
location |
Location! |
|
name |
String! |
|
type |
NullString! |
|
updated_at |
String |
|
user_id |
String! |
|
visibility |
String! |
CatalogFilter
Fields
| Name | Type | Description |
|---|---|---|
catalog_data |
Map |
|
created_at |
String |
|
filter_file |
String! |
|
id |
ID! |
|
location |
Location! |
|
name |
String! |
|
updated_at |
String |
|
user_id |
String! |
|
visibility |
String! |
CatalogPattern
Fields
| Name | Type | Description |
|---|---|---|
catalog_data |
Map |
|
created_at |
String |
|
id |
ID! |
|
location |
Location! |
|
name |
String! |
|
pattern_file |
String! |
|
updated_at |
String |
|
user_id |
String! |
|
visibility |
String! |
ClusterResources
Details about discovered workloads.
Fields
| Name | Type | Description |
|---|---|---|
resources |
[Resource!]! |
ConfigurationPage
Fields
| Name | Type | Description |
|---|---|---|
applications |
ApplicationPage |
|
filters |
FilterPage |
|
patterns |
PatternPageResult |
Container
Fields
| Name | Type | Description |
|---|---|---|
containerName |
String! |
|
controlPlaneMemberName |
String! |
|
image |
String! |
|
ports |
[Container_Port] |
args: NOT IMPLEMENTED. |
resources |
Any |
env: NOT IMPLEMENTED,. |
status |
Container_Status |
Container_Port
Fields
| Name | Type | Description |
|---|---|---|
containerPort |
Int! |
|
name |
String |
|
protocol |
String! |
Container_Status
Fields
| Name | Type | Description |
|---|---|---|
containerID |
Any |
|
containerStatusName |
String! |
|
image |
String! |
|
imageID |
Any |
|
lastState |
Any |
|
ready |
Boolean! |
|
restartCount |
Any |
|
started |
Boolean! |
image: String! imageID: String! containerID: String!. |
state |
Any |
ControlPlane
Control Plane data for a particular Mesh.
Fields
| Name | Type | Description |
|---|---|---|
members |
[ControlPlaneMember!]! |
Members of the Mesh. |
name |
String! |
Service Mesh Name. |
ControlPlaneMember
Member Details.
Fields
| Name | Type | Description |
|---|---|---|
component |
String! |
Component. |
data_planes |
[Container!] |
DataPlanes. |
name |
String! |
Name. |
namespace |
String! |
Namespace. |
version |
String! |
Version. |
DataPlane
Data Plane for a particular Mesh.
Fields
| Name | Type | Description |
|---|---|---|
name |
String! |
Service Mesh Name. |
proxies |
[Container!]! |
Members of the Mesh. |
Error
Fields
| Name | Type | Description |
|---|---|---|
code |
String! |
Error Code. |
description |
String! |
Error Details. |
FilterPage
Fields
| Name | Type | Description |
|---|---|---|
filters |
[FilterResult] |
|
page |
Int! |
|
page_size |
Int! |
|
total_count |
Int! |
FilterResult
Fields
| Name | Type | Description |
|---|---|---|
catalog_data |
Map |
|
created_at |
String |
|
filter_file |
String! |
|
id |
ID! |
|
location |
Location! |
|
name |
String! |
|
updated_at |
String |
|
user_id |
String! |
|
visibility |
String! |
K8sContext
Fields
| Name | Type | Description |
|---|---|---|
auth |
Map! |
|
cluster |
Map! |
|
created_at |
String! |
|
created_by |
ID! |
|
deployment_type |
String! |
|
id |
String! |
|
kubernetes_server_id |
ID! |
|
meshery_instance_id |
ID! |
|
name |
String! |
|
owner |
ID! |
|
server |
String! |
|
updated_at |
String! |
|
version |
String! |
K8sContextsPage
Fields
| Name | Type | Description |
|---|---|---|
contexts |
[K8sContext]! |
|
total_count |
Int! |
KctlDescribeDetails
Fields
| Name | Type | Description |
|---|---|---|
ctxid |
String |
|
describe |
String |
Location
Fields
| Name | Type | Description |
|---|---|---|
branch |
String |
|
host |
String |
|
path |
String |
|
type |
String |
MeshModelComponent
Fields
| Name | Type | Description |
|---|---|---|
count |
Int! |
|
name |
String! |
MeshModelRelationship
Fields
| Name | Type | Description |
|---|---|---|
count |
Int! |
|
name |
String! |
MeshModelSummary
Type MeshModelComponentsSummary define the summary of a Mesh Model.
Fields
| Name | Type | Description |
|---|---|---|
components |
[MeshModelComponent!] |
|
relationships |
[MeshModelRelationship!] |
MeshSyncEvent
Fields
| Name | Type | Description |
|---|---|---|
contextId |
String! |
|
object |
Any! |
|
type |
String! |
MesheryControllersStatusListItem
Fields
| Name | Type | Description |
|---|---|---|
contextId |
String! |
|
controller |
MesheryController! |
|
status |
MesheryControllerStatus! |
MesheryResult
Fields
| Name | Type | Description |
|---|---|---|
created_at |
String |
|
mesh |
String |
|
meshery_id |
String |
|
name |
String |
|
performance_profile |
String |
|
runner_results |
Map |
|
server_board_config |
String |
|
server_metrics |
String |
|
test_id |
String |
|
test_start_time |
String |
|
updated_at |
String |
|
user_id |
String |
NameSpace
Type to define a k8s Namespace.
Fields
| Name | Type | Description |
|---|---|---|
namespace |
String! |
Namespace Name. |
NullString
Fields
| Name | Type | Description |
|---|---|---|
String |
String! |
|
Valid |
Boolean! |
OAMCapability
Fields
| Name | Type | Description |
|---|---|---|
host |
String |
|
id |
String |
|
metadata |
Any |
|
oam_definition |
Any |
|
oam_ref_schema |
String |
|
restricted |
Boolean |
OperatorControllerStatus
Controllers of Meshery Operator.
Fields
| Name | Type | Description |
|---|---|---|
contextID |
String! |
|
error |
Error |
Controller Error Log. |
name |
String! |
Controller Name. |
status |
Status! |
Controller Status. |
version |
String! |
Controller Verison. |
OperatorControllerStatusPerK8sContext
Fields
| Name | Type | Description |
|---|---|---|
OperatorControllerStatus |
OperatorControllerStatus! |
|
contextID |
String! |
OperatorStatus
Status of Meshery Operator and its controllers.
Fields
| Name | Type | Description |
|---|---|---|
contextID |
String! |
|
controllers |
[OperatorControllerStatus!]! |
Details about various Controllers of Meshery Operator. |
error |
Error |
Error Logs encountered by Meshery Operator. |
status |
Status! |
Status of Meshery Operator. |
version |
String! |
Verion of Meshery Operator. |
OperatorStatusPerK8sContext
Fields
| Name | Type | Description |
|---|---|---|
contextID |
String! |
|
operatorStatus |
OperatorStatus! |
PatternPageResult
Fields
| Name | Type | Description |
|---|---|---|
page |
Int! |
|
page_size |
Int! |
|
patterns |
[PatternResult] |
|
total_count |
Int! |
PatternResult
Fields
| Name | Type | Description |
|---|---|---|
canSupport |
Boolean! |
|
catalog_data |
Map |
|
created_at |
String |
|
errmsg |
String |
|
id |
ID! |
|
location |
Location! |
|
name |
String! |
|
pattern_file |
String! |
|
updated_at |
String |
|
user_id |
String! |
|
visibility |
String! |
PerfPageProfiles
Fields
| Name | Type | Description |
|---|---|---|
page |
Int! |
|
page_size |
Int! |
|
profiles |
[PerfProfile] |
|
total_count |
Int! |
PerfPageResult
Fields
| Name | Type | Description |
|---|---|---|
page |
Int! |
|
page_size |
Int! |
|
results |
[MesheryResult] |
|
total_count |
Int! |
PerfProfile
Fields
| Name | Type | Description |
|---|---|---|
concurrent_request |
Int! |
|
content_type |
String |
|
created_at |
String |
|
duration |
String! |
|
endpoints |
[String] |
|
id |
String! |
|
last_run |
String |
|
load_generators |
[String] |
|
name |
String |
|
qps |
Int |
|
request_body |
String |
|
request_cookies |
String |
|
request_headers |
String |
|
service_mesh |
String |
|
total_results |
Int |
|
updated_at |
String |
|
user_id |
String! |
Resource
Fields
| Name | Type | Description |
|---|---|---|
count |
Int! |
Number of resouce. |
kind |
String! |
Name of resource. |
TelemetryComp
Fields
| Name | Type | Description |
|---|---|---|
name |
String! |
|
spec |
String! |
|
status |
String! |
Enumeration types
Also called Enums, enumeration types are a special kind of scalar that is restricted to a particular set of allowed values.
For more information, see
Enumeration Types
on graphql.org.
MeshType
Service Mesh Types.
MesheryController
| Value | Description |
|---|---|
BROKER |
|
MESHSYNC |
|
OPERATOR |
MesheryControllerStatus
| Value | Description |
|---|---|
DEPLOYED |
|
DEPLOYING |
|
NOTDEPLOYED |
|
UNKOWN |
Status
| Value | Description |
|---|---|
CONNECTED |
Connected (Applicable only for NATS status for now). |
DISABLED |
Disabled. |
ENABLED |
Enabled. |
PROCESSING |
Processing. |
UNKNOWN |
Unknown. |
Scalar types
Scalar values are atomic values, and do not have fields of their own. Basic scalars include strings, boolean values, and numbers. This schema also defines various custom scalar values, such as types for times and dates.
This schema includes custom scalar types for identifiers, with a specific type for each kind of object.
For more information, read about Scalar Types on graphql.org.
Any
Boolean
Represents true or false values.
ID
Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "VXNlci0xMA==") or integer (such as 4) input value will be accepted as an ID.
Int
Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Map
String
Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.
Time
Input types
Types that may be used as arguments (all scalar types may also be used as arguments).
Only general use input types are listed here. For mutation input types, see the associated mutation type above.
For more information, read about Scalar Types on graphql.org.
AddonStatusInput
Input for changing Addon Status.
Arguments
| Name | Type | Description |
|---|---|---|
k8scontextID |
String! |
kubernetes context ID. |
selector |
MeshType |
Filter by Serice Mesh. |
targetStatus |
Status! |
Desired Status. |
CatalogSelector
Arguments
| Name | Type | Description |
|---|---|---|
order |
String! |
|
page |
String! |
|
page_size |
String! |
|
search |
String! |
MeshModelSummarySelector
Arguments
| Name | Type | Description |
|---|---|---|
type |
String! |
PageFilter
Arguments
| Name | Type | Description |
|---|---|---|
from |
String |
|
order |
String |
|
page |
String! |
|
pageSize |
String! |
|
search |
String |
|
to |
String |
|
updated_after |
String |
ReSyncActions
Type ReSyncActions define the actions involved during resync.
Arguments
| Name | Type | Description |
|---|---|---|
ReSync |
String! |
|
clearDB |
String! |
|
hardReset |
String! |
ServiceMeshFilter
Filter Control Plane Query.
Arguments
| Name | Type | Description |
|---|---|---|
k8sClusterIDs |
[String!] |
|
type |
MeshType |
Filter by Service Mesh. |