openapi: 3.0.0 info: description: 'API to interact and manage the lifecycle of your machine learning models deployed through Seldon Deploy.' title: Seldon Deploy AlertingService model API version: v1alpha1 servers: - url: http://X.X.X.X/seldon-deploy/api/v1alpha1 - url: https://X.X.X.X/seldon-deploy/api/v1alpha1 security: - OAuth2: - '[]' tags: - name: model paths: /v2/models/{model_name}/versions/{model_version}/ready: parameters: - schema: type: string name: model_name in: path required: true - schema: type: string name: model_version in: path required: true get: summary: Model Ready tags: - model responses: '200': description: OK operationId: model-version-ready description: The “model ready” health API indicates if a specific model is ready for inferencing. The model name and (optionally) version must be available in the URL. If a version is not provided the server may choose a version based on its own policies. /v2/models/{model_name}/ready: parameters: - schema: type: string name: model_name in: path required: true get: summary: Model Ready tags: - model responses: '200': description: OK operationId: model-ready description: The “model ready” health API indicates if a specific model is ready for inferencing. The model name and (optionally) version must be available in the URL. If a version is not provided the server may choose a version based on its own policies. /v2/models/{model_name}/versions/{model_version}: parameters: - schema: type: string name: model_name in: path required: true - schema: type: string name: model_version in: path required: true get: summary: Model Metadata tags: - model responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/MetadataModelResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/MetadataModelErrorResponse' operationId: model-version-metadata description: The per-model metadata endpoint provides information about a model. A model metadata request is made with an HTTP GET to a model metadata endpoint. The model name and (optionally) version must be available in the URL. If a version is not provided the server may choose a version based on its own policies or return an error. /v2/models/{model_name}: parameters: - schema: type: string name: model_name in: path required: true get: summary: Model Metadata tags: - model responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/MetadataModelResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/MetadataModelErrorResponse' operationId: model-metadata description: The per-model metadata endpoint provides information about a model. A model metadata request is made with an HTTP GET to a model metadata endpoint. The model name and (optionally) version must be available in the URL. If a version is not provided the server may choose a version based on its own policies or return an error. /v2/models/{model_name}/versions/{model_version}/infer: parameters: - schema: type: string name: model_name in: path required: true - schema: type: string name: model_version in: path required: true post: summary: Model Inference operationId: model-version-inference responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/InferenceResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/InferenceErrorResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/InferenceErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InferenceErrorResponse' requestBody: content: application/json: schema: $ref: '#/components/schemas/InferenceRequest' description: An inference request is made with an HTTP POST to an inference endpoint. The model name and (optionally) version must be available in the URL. If a version is not provided the server may choose a version based on its own policies or return an error. tags: - model /v2/models/{model_name}/infer: parameters: - schema: type: string name: model_name in: path required: true post: summary: Model Inference operationId: model-inference responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/InferenceResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/InferenceErrorResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/InferenceErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InferenceErrorResponse' requestBody: content: application/json: schema: $ref: '#/components/schemas/InferenceRequest' description: An inference request is made with an HTTP POST to an inference endpoint. The model name and (optionally) version must be available in the URL. If a version is not provided the server may choose a version based on its own policies or return an error. tags: - model components: schemas: InferenceRequest: title: InferenceRequest type: object x-examples: Example 1: id: '42' inputs: - name: input0 shape: - 2 - 2 datatype: UINT32 data: - 1 - 2 - 3 - 4 - name: input1 shape: - 3 datatype: BOOL data: - true outputs: - name: output0 Example 2: id: '42' outputs: - name: output0 shape: - 3 - 2 datatype: FP32 data: - 1 - 1.1 - 2 - 2.1 - 3 - 3.1 properties: id: type: string parameters: $ref: '#/components/schemas/Parameters' inputs: type: array items: $ref: '#/components/schemas/RequestInput' outputs: type: array items: $ref: '#/components/schemas/RequestOutput' required: - inputs Parameters: type: object title: Parameters x-examples: {} additionalProperties: true properties: content_type: type: string headers: type: object ResponseOutput: title: ResponseOutput type: object properties: name: type: string shape: type: array items: type: integer datatype: type: string parameters: $ref: '#/components/schemas/Parameters' data: $ref: '#/components/schemas/TensorData' required: - name - shape - datatype - data RequestOutput: title: RequestOutput type: object properties: name: type: string parameters: $ref: '#/components/schemas/Parameters' required: - name InferenceErrorResponse: title: InferenceErrorResponse type: object properties: error: type: string RequestInput: title: RequestInput type: object properties: name: type: string shape: type: array items: type: integer datatype: type: string parameters: $ref: '#/components/schemas/Parameters' data: $ref: '#/components/schemas/TensorData' required: - name - shape - datatype - data MetadataTensor: title: MetadataTensor type: object properties: name: type: string datatype: type: string shape: type: array items: type: integer parameters: $ref: '#/components/schemas/Parameters' required: - name - datatype - shape MetadataModelErrorResponse: title: MetadataModelErrorResponse type: object properties: error: type: string required: - error MetadataModelResponse: title: MetadataModelResponse type: object properties: name: type: string versions: type: array items: type: string platform: type: string inputs: type: array items: $ref: '#/components/schemas/MetadataTensor' outputs: type: array items: $ref: '#/components/schemas/MetadataTensor' parameters: $ref: '#/components/schemas/Parameters' required: - name - platform InferenceResponse: title: InferenceResponse type: object properties: model_name: type: string model_version: type: string id: type: string parameters: $ref: '#/components/schemas/Parameters' outputs: type: array items: $ref: '#/components/schemas/ResponseOutput' required: - model_name - outputs TensorData: title: TensorData securitySchemes: OAuth2: type: oauth2 flows: password: tokenUrl: https://Y.Y.Y.Y scopes: email: '' groups: '' openid: '' profile: ''