API Reference

Subscriptions API

List subscriptions for a pipeline

get
Query parameters
namespacestringOptional

The namespace to which the pipeline and model in the subscription belong.

pipelineNamestringOptional

The name of the pipeline associated with the subscription.

Responses
200

OK

application/json
get
GET /api/v1/pipeline/subscriptions HTTP/1.1
Host: 
Accept: */*
{
  "subscriptions": [
    {
      "subscriptionId": "text",
      "modelName": "text",
      "featuresMetadata": [
        {
          "numeric": {
            "name": "Age"
          },
          "categorical": {
            "name": "Marital Status",
            "categories": [
              "Married",
              "Single",
              "Divorced"
            ]
          },
          "categoricalProbaTensor": {
            "name": "Marital Status",
            "categories": [
              "Married",
              "Single",
              "Divorced"
            ]
          }
        }
      ],
      "namespace": "text",
      "pipelineName": "text"
    }
  ]
}

Subscribe to a pipeline model

post
Body
namespacestringRequired

The namespace to which the pipeline and model belong.

Example: my-namespace
pipelineNamestringRequired

The name of the pipeline to which the model belongs.

Example: my-pipeline
modelNamestringRequired

The name of the model.

Example: my-model
Responses
200

OK

application/json
post
POST /api/v1/pipeline/model/subscribe HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 309

{
  "namespace": "my-namespace",
  "pipelineName": "my-pipeline",
  "modelName": "my-model",
  "featuresMetadata": [
    {
      "numeric": {
        "name": "Age"
      },
      "categorical": {
        "name": "Marital Status",
        "categories": [
          "Married",
          "Single",
          "Divorced"
        ]
      },
      "categoricalProbaTensor": {
        "name": "Marital Status",
        "categories": [
          "Married",
          "Single",
          "Divorced"
        ]
      }
    }
  ]
}
{
  "subscriptionId": "text"
}

Unsubscribe from a pipeline model

delete
Query parameters
subscriptionIdstring · uint64Required

The unique identifier of the subscription.

Responses
200

OK

application/json
Responseobject
delete
DELETE /api/v1/pipeline/model/unsubscribe?subscriptionId=text HTTP/1.1
Host: 
Accept: */*
{}

Feedback API

Send feedback for a model

post
Body
namespacestringRequired

The namespace to which the pipeline and model belong.

Example: seldon-system
pipelineNamestringRequired

The name of the pipeline to which the model belongs.

Example: my-pipeline
modelNamestringRequired

The name of the model.

Example: my-model
requestIdstringRequired

The prediction request ID, could represent a batch or not.

Example: 1234
batchIdinteger · int64Optional

The request index in the batch, if applicable. Defaults to 0.

Example: 0
Responses
200

OK

application/json
post
POST /api/v1/pipeline/model/feedback HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 197

{
  "namespace": "seldon-system",
  "pipelineName": "my-pipeline",
  "modelName": "my-model",
  "requestId": "1234",
  "batchId": "0",
  "feedback": {
    "classificationFeedback": {
      "value": 1
    },
    "regressionFeedback": {
      "value": 1
    }
  }
}
{
  "feedbackId": "text"
}

Metrics API

Classification Metrics

Get classification metrics

get
Query parameters
namespacestringRequired

The namespace to which the pipeline and model belong.

pipelineNamestringRequired

The name of the pipeline to which the model belongs.

modelNamestringRequired

The name of the model.

startTimestring · date-timeRequired

The start datetime of the metrics to retrieve (inclusive), in ISO 8601 format.

endTimestring · date-timeRequired

The end datetime of the metrics to retrieve (exclusive), in ISO 8601 format.

intervalstringOptional

The size of each bucket within the time window, e.g., 10s, 2h45m, 1h. If left empty, a single bucket covering the entire time window will be returned.

Responses
200

OK

application/json
get
GET /api/v1/metrics/pipeline/classification?namespace=text&pipelineName=text&modelName=text&startTime=2025-08-31T06%3A37%3A47.628Z&endTime=2025-08-31T06%3A37%3A47.628Z HTTP/1.1
Host: 
Accept: */*
{
  "metrics": [
    {
      "confusionMatrix": {
        "categories": [
          "text"
        ],
        "values": [
          1
        ],
        "computedConfusionValues": [
          {
            "truePositiveCount": 1,
            "trueNegativeCount": 1,
            "falsePositiveCount": 1,
            "falseNegativeCount": 1
          }
        ]
      },
      "accuracy": 1,
      "recall": 1,
      "precision": 1,
      "specificity": 1,
      "f1": 1,
      "endTime": "2025-08-31T06:37:47.628Z"
    }
  ]
}

Regression Metrics

Get regression metrics

get
Query parameters
namespacestringRequired

The namespace to which the pipeline and model belong.

pipelineNamestringRequired

The name of the pipeline to which the model belongs.

modelNamestringRequired

The name of the model.

startTimestring · date-timeRequired

The start datetime of the metrics to retrieve (inclusive), in ISO 8601 format.

endTimestring · date-timeRequired

The end datetime of the metrics to retrieve (exclusive), in ISO 8601 format.

intervalstringOptional

The size of each bucket within the time window, e.g., 10s, 2h45m, 1h. If left empty, a single bucket covering the entire time window will be returned.

Responses
200

OK

application/json
get
GET /api/v1/metrics/pipeline/regression?namespace=text&pipelineName=text&modelName=text&startTime=2025-08-31T06%3A37%3A47.628Z&endTime=2025-08-31T06%3A37%3A47.628Z HTTP/1.1
Host: 
Accept: */*
{
  "metrics": [
    {
      "meanSquaredError": 1,
      "rootMeanSquaredError": 1,
      "meanAbsoluteError": 1,
      "endTime": "2025-08-31T06:37:47.628Z"
    }
  ]
}

Last updated

Was this helpful?