action microcks_search_services { label: "Search for Services and APIs" provider: microcks method: GET path: "/services/search" encoding: json input: { type: "object" properties: { queryMap: { type: "object" } } required: ["queryMap"] additionalProperties: false } output: { type: "array" items: { description: "Represents a Service or API definition as registred into Microcks repository" required: ["name", "version", "type"] properties: { id: { type: "string" description: "Unique identifier for this Service or API" } metadata: { type: "object" description: "Commodity object for holding metadata on any entity. This object is inspired by Kubernetes metadata." required: ["createdOn", "lastUpdate"] properties: { annotations: { type: "object" description: "Annotations of attached object" } createdOn: { type: "integer" description: "Creation date of attached object" } labels: { type: "object" description: "Labels put on attached object" } lastUpdate: { type: "integer" description: "Last update of attached object" } } } name: { type: "string" description: "Distinct name for this Service or API (maybe shared among many versions)" } operations: { type: "array" description: "Set of Operations for Service or API" items: { type: "object" description: "An Operation of a Service or API" required: ["name", "method"] properties: { bindings: { type: "object" description: "Map of protocol binding details for this operation" } defaultDelay: { type: "number" description: "Default response time delay for mocks" } dispatcher: { type: "string" description: "Dispatcher strategy used for mocks" } dispatcherRules: { type: "string" description: "DispatcherRules used for mocks" } inputName: { type: "string" description: "Name of input parameters in case of Xml based Service" } method: { type: "string" description: "Represents transport method" } name: { type: "string" description: "Unique name of this Operation within Service scope" } outputName: { type: "string" description: "Name of output parameters in case of Xml based Service" } parameterContraints: { type: "array" description: "Contraints that may apply to mock invocatino on this operation" items: { type: "object" description: "Companion object for Operation that may be used to express constraints on request parameters" required: ["name"] properties: { in: { type: "string" description: "Parameter location" enum: ["path", "query", "header"] } mustMatchRegexp: { type: "string" description: "Whether it's a regular expression matching constraint" } name: { type: "string" description: "Parameter name" } recopy: { type: "boolean" description: "Whether it's a recopy constraint" } required: { type: "boolean" description: "Whether it's a required constraint" } } } } resourcePaths: { type: "array" description: "Paths the mocks endpoints are mapped on" items: { type: "string" } } } } } type: { type: "string" description: "Service or API Type" enum: ["REST", "SOAP_HTTP", "GENERIC_REST", "GENERIC_EVENT", "EVENT", "GRPC", "GRAPHQL"] } version: { type: "string" description: "Distinct version for a named Service or API" } xmlNS: { type: "string" description: "Associated Xml Namespace in case of Xml based Service" } } } } }