Skip to content

ClassificationRuleUpdateDto

Endpoints · All schemas

FieldRequiredDescription
actionNoSee definition below
archiveNoArchive matches; turning it on requires archiveConsent
archiveConsentNoThe owner explicitly agrees that matches are archived
enabledNoA disabled rule keeps what it applied and stops changing anything
mediaTypeNoSee definition below
personIdsNoMatch any of these people
tagIdsNoMatch any of these tags, or a tag beneath one of them
tagNameNoThe rule-owned tag a match receives; null tags nothing
takenAfterNoTaken on or after this day (YYYY-MM-DD)
takenBeforeNoTaken on or before this day (YYYY-MM-DD)
thresholdNoThe confidence a visual phrase has to reach
visualQueriesNoVisual category phrases compared with each item

Complete definition

required lists fields that must be present. nullable allows a null value; it does not make the field optional. Response enums retain exact wire values for compatibility.

Field definitions: ClassificationRuleAction, ClassificationMediaType

{
  "properties": {
    "action": {
      "$ref": "#/components/schemas/ClassificationRuleAction"
    },
    "archive": {
      "description": "Archive matches; turning it on requires archiveConsent",
      "type": "boolean"
    },
    "archiveConsent": {
      "description": "The owner explicitly agrees that matches are archived",
      "type": "boolean"
    },
    "enabled": {
      "description": "A disabled rule keeps what it applied and stops changing anything",
      "type": "boolean"
    },
    "mediaType": {
      "$ref": "#/components/schemas/ClassificationMediaType"
    },
    "personIds": {
      "description": "Match any of these people",
      "items": {
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
        "type": "string"
      },
      "maxItems": 50,
      "type": "array"
    },
    "tagIds": {
      "description": "Match any of these tags, or a tag beneath one of them",
      "items": {
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
        "type": "string"
      },
      "maxItems": 50,
      "type": "array"
    },
    "tagName": {
      "description": "The rule-owned tag a match receives; null tags nothing",
      "maxLength": 120,
      "minLength": 1,
      "nullable": true,
      "type": "string"
    },
    "takenAfter": {
      "description": "Taken on or after this day (YYYY-MM-DD)",
      "nullable": true,
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "type": "string"
    },
    "takenBefore": {
      "description": "Taken on or before this day (YYYY-MM-DD)",
      "nullable": true,
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "type": "string"
    },
    "threshold": {
      "description": "The confidence a visual phrase has to reach",
      "format": "double",
      "maximum": 1,
      "minimum": 0,
      "type": "number"
    },
    "visualQueries": {
      "description": "Visual category phrases compared with each item",
      "items": {
        "maxLength": 120,
        "minLength": 1,
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    }
  },
  "type": "object"
}