Seldon External API icon

Seldon External API

Connect to Seldon External API with 1 MCP tools for AI-powered API automation.

COMMUNITYNO AUTH0 INSTALLS
API Docs
OpenAPI Specificationv3.0
{
  "openapi": "3.0.0",
  "servers": [
    {
      "url": "http://seldon.local"
    },
    {
      "url": "http://{host}:{port}",
      "variables": {
        "host": {
          "default": "localhost",
          "description": "host running seldon core"
        },
        "port": {
          "default": "80"
        }
      }
    },
    {
      "description": "fixed host as swagger UI has bug with variables for auth",
      "url": "http://localhost:8002"
    }
  ],
  "info": {
    "contact": {
      "name": "Seldon Core",
      "url": "https://github.com/SeldonIO/seldon-core"
    },
    "title": "Seldon External API",
    "version": "0.1",
    "x-apisguru-categories": [
      "machine_learning"
    ],
    "x-origin": [
      {
        "format": "openapi",
        "url": "https://raw.githubusercontent.com/SeldonIO/seldon-core/master/openapi/wrapper.oas3.json",
        "version": "3.0"
      }
    ],
    "x-providerName": "seldon.local",
    "x-serviceName": "wrapper",
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_apis.guru_assets_images_no-logo.svg"
    }
  },
  "externalDocs": {
    "description": "Seldon Core Documentation",
    "url": "https://github.com/SeldonIO/seldon-core"
  },
  "paths": {
    "/aggregate": {
      "get": {
        "operationId": "Aggregate",
        "parameters": [
          {
            "in": "query",
            "name": "body",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/SeldonMessageList"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      },
      "post": {
        "operationId": "Aggregate2",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "encoding": {
                "json": {
                  "contentType": "application/json"
                }
              },
              "schema": {
                "properties": {
                  "json": {
                    "$ref": "#/components/schemas/SeldonMessageList"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      }
    },
    "/predict": {
      "get": {
        "operationId": "TransformInput4",
        "parameters": [
          {
            "example": {
              "json": "{\"data\":{\"names\" : [\"feature1\"],\"tensor\" : {\"shape\": [1,1],\"values\": [1]}}}"
            },
            "in": "query",
            "name": "json",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/SeldonMessage"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      },
      "post": {
        "operationId": "TransformInput3",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "encoding": {
                "json": {
                  "contentType": "application/json"
                }
              },
              "schema": {
                "properties": {
                  "json": {
                    "$ref": "#/components/schemas/SeldonMessage"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      }
    },
    "/route": {
      "get": {
        "operationId": "Route2",
        "parameters": [
          {
            "in": "query",
            "name": "json",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/SeldonMessage"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      },
      "post": {
        "operationId": "Route",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "encoding": {
                "json": {
                  "contentType": "application/json"
                }
              },
              "schema": {
                "properties": {
                  "json": {
                    "$ref": "#/components/schemas/SeldonMessage"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      }
    },
    "/send-feedback": {
      "get": {
        "operationId": "SendFeedback2",
        "parameters": [
          {
            "in": "query",
            "name": "json",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Feedback"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      },
      "post": {
        "operationId": "SendFeedback",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "encoding": {
                "json": {
                  "contentType": "application/json"
                }
              },
              "schema": {
                "properties": {
                  "json": {
                    "$ref": "#/components/schemas/Feedback"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      }
    },
    "/transform-input": {
      "get": {
        "operationId": "TransformInput2",
        "parameters": [
          {
            "in": "query",
            "name": "json",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/SeldonMessage"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      },
      "post": {
        "operationId": "TransformInput",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "encoding": {
                "json": {
                  "contentType": "application/json"
                }
              },
              "schema": {
                "properties": {
                  "json": {
                    "$ref": "#/components/schemas/SeldonMessage"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      }
    },
    "/transform-output": {
      "get": {
        "operationId": "TransformOutput2",
        "parameters": [
          {
            "in": "query",
            "name": "json",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/SeldonMessage"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      },
      "post": {
        "operationId": "TransformOutput",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "encoding": {
                "json": {
                  "contentType": "application/json"
                }
              },
              "schema": {
                "properties": {
                  "json": {
                    "$ref": "#/components/schemas/SeldonMessage"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SeldonMessage"
                }
              }
            },
            "description": "A successful response."
          }
        },
        "tags": [
          "Internal"
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AnyValue": {
        "description": "Can be anything: string, number, array, object, etc."
      },
      "DefaultData": {
        "properties": {
          "names": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "ndarry": {
            "items": {
              "$ref": "#/components/schemas/AnyValue"
            },
            "type": "array"
          },
          "tensor": {
            "$ref": "#/components/schemas/Tensor"
          },
          "tftensor": {
            "$ref": "#/components/schemas/TensorflowTensorProto"
          }
        },
        "type": "object"
      },
      "Feedback": {
        "properties": {
          "request": {
            "$ref": "#/components/schemas/SeldonMessage"
          },
          "response": {
            "$ref": "#/components/schemas/SeldonMessage"
          },
          "reward": {
            "format": "float",
            "type": "number"
          },
          "truth": {
            "$ref": "#/components/schemas/SeldonMessage"
          }
        },
        "type": "object"
      },
      "Meta": {
        "properties": {
          "metrics": {
            "items": {
              "$ref": "#/components/schemas/Metric"
            },
            "type": "array"
          },
          "puid": {
            "type": "string"
          },
          "requestPath": {
            "additionalProperties": {
              "type": "string"
            },
            "example": {
              "classifier": "seldonio/mock_classifier:1.0"
            },
            "type": "object"
          },
          "routing": {
            "additionalProperties": {
              "format": "int32",
              "type": "integer"
            },
            "example": {
              "router1": 1
            },
            "type": "object"
          },
          "tags": {
            "additionalProperties": {
              "$ref": "#/components/schemas/AnyValue"
            },
            "example": {
              "mytag": "myvalue"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "Metric": {
        "properties": {
          "key": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/MetricType"
          },
          "value": {
            "format": "float",
            "type": "number"
          }
        },
        "type": "object"
      },
      "MetricType": {
        "default": "COUNTER",
        "enum": [
          "COUNTER",
          "GAUGE",
          "TIMER"
        ],
        "type": "string"
      },
      "SeldonMessage": {
        "properties": {
          "binData": {
            "format": "byte",
            "type": "string"
          },
          "data": {
            "$ref": "#/components/schemas/DefaultData"
          },
          "meta": {
            "$ref": "#/components/schemas/Meta"
          },
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "strData": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "SeldonMessageList": {
        "properties": {
          "seldonMessages": {
            "items": {
              "$ref": "#/components/schemas/SeldonMessage"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "Status": {
        "properties": {
          "code": {
            "format": "int32",
            "type": "integer"
          },
          "info": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/StatusStatusFlag"
          }
        },
        "type": "object"
      },
      "StatusStatusFlag": {
        "default": "SUCCESS",
        "enum": [
          "SUCCESS",
          "FAILURE"
        ],
        "type": "string"
      },
      "Tensor": {
        "properties": {
          "shape": {
            "items": {
              "format": "int32",
              "type": "integer"
            },
            "type": "array"
          },
          "values": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "TensorShapeProtoDim": {
        "description": "One dimension of the tensor.",
        "properties": {
          "name": {
            "description": "Optional name of the tensor dimension.",
            "type": "string"
          },
          "size": {
            "description": "Size of the tensor in that dimension.\nThis value must be >= -1, but values of -1 are reserved for \"unknown\"\nshapes (values of -1 mean \"unknown\" dimension).  Certain wrappers\nthat work with TensorShapeProto may fail at runtime when deserializing\na TensorShapeProto containing a dim value of -1.",
            "format": "int64",
            "type": "string"
          }
        },
        "type": "object"
      },
      "TensorflowDataType": {
        "default": "DT_INVALID",
        "description": "- DT_INVALID: Not a legal value for DataType.  Used to indicate a DataType field\nhas not been set.\n - DT_FLOAT: Data types that all computation devices are expected to be\ncapable to support.\n - DT_FLOAT_REF: Do not use!  These are only for parameters.  Every enum above\nshould have a corresponding value below (verified by types_test).",
        "enum": [
          "DT_INVALID",
          "DT_FLOAT",
          "DT_DOUBLE",
          "DT_INT32",
          "DT_UINT8",
          "DT_INT16",
          "DT_INT8",
          "DT_STRING",
          "DT_COMPLEX64",
          "DT_INT64",
          "DT_BOOL",
          "DT_QINT8",
          "DT_QUINT8",
          "DT_QINT32",
          "DT_BFLOAT16",
          "DT_QINT16",
          "DT_QUINT16",
          "DT_UINT16",
          "DT_COMPLEX128",
          "DT_HALF",
          "DT_RESOURCE",
          "DT_VARIANT",
          "DT_UINT32",
          "DT_UINT64",
          "DT_FLOAT_REF",
          "DT_DOUBLE_REF",
          "DT_INT32_REF",
          "DT_UINT8_REF",
          "DT_INT16_REF",
          "DT_INT8_REF",
          "DT_STRING_REF",
          "DT_COMPLEX64_REF",
          "DT_INT64_REF",
          "DT_BOOL_REF",
          "DT_QINT8_REF",
          "DT_QUINT8_REF",
          "DT_QINT32_REF",
          "DT_BFLOAT16_REF",
          "DT_QINT16_REF",
          "DT_QUINT16_REF",
          "DT_UINT16_REF",
          "DT_COMPLEX128_REF",
          "DT_HALF_REF",
          "DT_RESOURCE_REF",
          "DT_VARIANT_REF",
          "DT_UINT32_REF",
          "DT_UINT64_REF"
        ],
        "title": "LINT.IfChange",
        "type": "string"
      },
      "TensorflowResourceHandleProto": {
        "description": "Protocol buffer representing a handle to a tensorflow resource. Handles are\nnot valid across executions, but can be serialized back and forth from within\na single run.",
        "properties": {
          "container": {
            "description": "Container in which this resource is placed.",
            "type": "string"
          },
          "device": {
            "description": "Unique name for the device containing the resource.",
            "type": "string"
          },
          "hash_code": {
            "description": "Hash code for the type of the resource. Is only valid in the same device\nand in the same execution.",
            "format": "uint64",
            "type": "string"
          },
          "maybe_type_name": {
            "description": "For debug-only, the name of the type pointed to by this handle, if\navailable.",
            "type": "string"
          },
          "name": {
            "description": "Unique name of this resource.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "TensorflowTensorProto": {
        "description": "Protocol buffer representing a tensor.",
        "properties": {
          "bool_val": {
            "items": {
              "format": "boolean",
              "type": "boolean"
            },
            "title": "DT_BOOL",
            "type": "array"
          },
          "dcomplex_val": {
            "description": "DT_COMPLEX128. dcomplex_val(2*i) and dcomplex_val(2*i+1) are real\nand imaginary parts of i-th double precision complex.",
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": "array"
          },
          "double_val": {
            "description": "DT_DOUBLE.",
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": "array"
          },
          "dtype": {
            "$ref": "#/components/schemas/TensorflowDataType"
          },
          "float_val": {
            "description": "DT_FLOAT.",
            "items": {
              "format": "float",
              "type": "number"
            },
            "type": "array"
          },
          "half_val": {
            "description": "DT_HALF, DT_BFLOAT16. Note that since protobuf has no int16 type, we'll\nhave some pointless zero padding for each value here.",
            "items": {
              "format": "int32",
              "type": "integer"
            },
            "type": "array"
          },
          "int64_val": {
            "items": {
              "format": "int64",
              "type": "string"
            },
            "title": "DT_INT64",
            "type": "array"
          },
          "int_val": {
            "description": "DT_INT32, DT_INT16, DT_INT8, DT_UINT8.",
            "items": {
              "format": "int32",
              "type": "integer"
            },
            "type": "array"
          },
          "resource_handle_val": {
            "items": {
              "$ref": "#/components/schemas/TensorflowResourceHandleProto"
            },
            "title": "DT_RESOURCE",
            "type": "array"
          },
          "scomplex_val": {
            "description": "DT_COMPLEX64. scomplex_val(2*i) and scomplex_val(2*i+1) are real\nand imaginary parts of i-th single precision complex.",
            "items": {
              "format": "float",
              "type": "number"
            },
            "type": "array"
          },
          "string_val": {
            "items": {
              "format": "byte",
              "type": "string"
            },
            "title": "DT_STRING",
            "type": "array"
          },
          "tensor_content": {
            "description": "Serialized raw tensor content from either Tensor::AsProtoTensorContent or\nmemcpy in tensorflow::grpc::EncodeTensorToByteBuffer. This representation\ncan be used for all tensor types. The purpose of this representation is to\nreduce serialization overhead during RPC call by avoiding serialization of\nmany repeated small items.",
            "format": "byte",
            "type": "string"
          },
          "tensor_shape": {
            "$ref": "#/components/schemas/TensorflowTensorShapeProto",
            "description": "Shape of the tensor.  TODO(touts): sort out the 0-rank issues."
          },
          "uint32_val": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "title": "DT_UINT32",
            "type": "array"
          },
          "uint64_val": {
            "items": {
              "format": "uint64",
              "type": "string"
            },
            "title": "DT_UINT64",
            "type": "array"
          },
          "variant_val": {
            "items": {
              "$ref": "#/components/schemas/TensorflowVariantTensorDataProto"
            },
            "title": "DT_VARIANT",
            "type": "array"
          },
          "version_number": {
            "description": "Version number.\n\nIn version 0, if the \"repeated xxx\" representations contain only one\nelement, that element is repeated to fill the shape.  This makes it easy\nto represent a constant Tensor with a single value.",
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "TensorflowTensorShapeProto": {
        "description": "Dimensions of a tensor.",
        "properties": {
          "dim": {
            "description": "Dimensions of the tensor, such as {\"input\", 30}, {\"output\", 40}\nfor a 30 x 40 2D tensor.  If an entry has size -1, this\ncorresponds to a dimension of unknown size. The names are\noptional.\n\nThe order of entries in \"dim\" matters: It indicates the layout of the\nvalues in the tensor in-memory representation.\n\nThe first entry in \"dim\" is the outermost dimension used to layout the\nvalues, the last entry is the innermost dimension.  This matches the\nin-memory layout of RowMajor Eigen tensors.\n\nIf \"dim.size()\" > 0, \"unknown_rank\" must be false.",
            "items": {
              "$ref": "#/components/schemas/TensorShapeProtoDim"
            },
            "type": "array"
          },
          "unknown_rank": {
            "description": "If true, the number of dimensions in the shape is unknown.\n\nIf true, \"dim.size()\" must be 0.",
            "format": "boolean",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "TensorflowVariantTensorDataProto": {
        "description": "Protocol buffer representing the serialization format of DT_VARIANT tensors.",
        "properties": {
          "metadata": {
            "description": "Portions of the object that are not Tensors.",
            "format": "byte",
            "type": "string"
          },
          "tensors": {
            "description": "Tensors contained within objects being serialized.",
            "items": {
              "$ref": "#/components/schemas/TensorflowTensorProto"
            },
            "type": "array"
          },
          "type_name": {
            "description": "Name of the type of objects being serialized.",
            "type": "string"
          }
        },
        "type": "object"
      }
    }
  }
}