Classify

Single page of a classify job result

Get classify job result, containing the predictions for a given page.

get/api/{projectId}/classify/all/result/page

Request

Path parameters

projectIdinteger required

Project ID

Query parameters

limitinteger

Maximum number of results

offsetinteger

Offset in results, can be used in conjunction with LimitResultsParameter to implement paging.

variant'int8' | 'float32' | 'akida'

Keras model variant

impulseIdinteger

Impulse ID. If this is unset then the default impulse is used.

truncateStructuredLabelsboolean

If true, only a slice of labels will be returned for samples with multiple labels.

labelsstring
Example:["idle", "snake"]

Only include samples with a label within the given list of labels, given as a JSON string

filenamestring

Only include samples whose filename includes the given filename

maxLengthinteger

Only include samples shorter than the given length, in milliseconds

minLengthinteger

Only include samples longer than the given length, in milliseconds

minFrequencynumber

Only include samples with higher frequency than given frequency, in hertz

maxFrequencynumber

Only include samples with lower frequency than given frequency, in hertz

signatureValidity'both' | 'valid' | 'invalid'

Include samples with either valid or invalid signatures

minLabelnumber

Only include samples with a label >= this value

maxLabelnumber

Only include samples with a label < this value

searchstring
Example:<id> <name>

Search query

dataType'audio' | 'image'

Include only samples with a particular data type

minIdinteger

Include only samples with an ID >= this value

maxIdinteger

Include only samples with an ID < this value

metadatastring
Example:Example 1: returns samples where metadata key "foo" is 'bar' or 'baz' AND metadata key "k" is "v". [ { "no_metadata": true }, { "filters_combinator": "and" }, { "key": "foo", "op": "eq", "values": ["bar", "baz"] }, { "key": "k", "op": "eq", "values": ["v"] } ] Example 2: returns samples where metadata key "foo" is not 'bar'. Samples without any metadata are filtered out. [ { "no_metadata": false }, { "filters_combinator": "or" }, { "key": "foo", "op": "neq", "values": ["bar"] } ]

Filter samples by metadata key-value pairs, provided as a JSON string. Each item in the filter list is an object with the following properties: - "key": Metadata key to filter on. - "op": Operator ("eq" for positive match, "neq" for negative match). - "values": (optional) Array of values to match/exclude. If omitted or empty, matches/excludes all values for the key. In addition to filter objects, the following option objects can be specified: - { "no_metadata": boolean } - If true, include samples without any metadata - { "filters_combinator": ("and" | "or") } - Specifies the combinator and matching mode: - "and": All filter items must match (logical AND). - "or": Any filter item may match (logical OR); samples with metadata keys not present in the filters are included.

minDatestring date-time
Example:2023-01-01T00:00:00.000Z

Only include samples that where added after the date given

maxDatestring date-time
Example:2024-12-31T00:00:00.000Z

Only include samples that were added before the date given

category'training' | 'testing'

Category to run model testing, or to retrieve results. If not provided, this will default to 'testing'.

Response

OK

successboolean required

Whether the operation succeeded

errorstring

Optional error description (set if 'success' was false)

totalCountinteger required

Total sample count

Example response

{
  "result": [
    {
      "sample": {
        "id": 2,
        "filename": "idle01.d8Ae",
        "signatureValidate": true,
        "signatureMethod": "HS256",
        "label": "healthy-machine",
        "intervalMs": 16,
        "frequency": 62.5,
        "originalIntervalMs": 16,
        "originalFrequency": 62.5,
        "sensors": [
          {
            "name": "accX"
          }
        ],
        "datastreams": [
          {
            "sensors": [
              {
                "name": "accX"
              }
            ]
          }
        ]
      },
      "classifications": [
        {
          "learnBlock": {
            "name": "NN Classifier",
            "dsp": [
              27
            ],
            "title": "Classification (Keras)",
            "createdBy": "createImpulse"
          },
          "result": [
            {
              "idle": 0.0002,
              "wave": 0.9998,
              "anomaly": -0.42
            }
          ],
          "structuredResult": [
            {
              "debugInfoJson": "{\n    \"y_trues\": [\n        {\"x\": 0.854, \"y\": 0.453125, \"label\": 1},\n        {\"x\": 0.197, \"y\": 0.53125, \"label\": 2}\n    ],\n    \"y_preds\": [\n        {\"x\": 0.916, \"y\": 0.875, \"label\": 1},\n        {\"x\": 0.25, \"y\": 0.541, \"label\": 2}\n    ],\n    \"assignments\": [\n        {\"yp\": 1, \"yt\": 1, \"label\": 2, \"distance\": 0.053}\n    ],\n    \"normalised_min_distance\": 0.2,\n    \"all_pairwise_distances\": [\n        [0, 0, 0.426],\n        [1, 1, 0.053]\n    ],\n    \"unassigned_y_true_idxs\": [0],\n    \"unassigned_y_pred_idxs\": [0]\n}\n"
            }
          ],
          "thresholds": [
            {
              "key": "min_score",
              "description": "Score threshold",
              "helpText": "Threshold score for bounding boxes. If the score for a bounding box is below this the box will be discarded."
            }
          ]
        }
      ]
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.