addedInput schema / properties / filters / description
Added value: +"Keyword, regex, highlight and AI filters; defaults to none"
removedInput schema / properties / filters / properties / ai / $ref
Removed value: -"#/properties/streamDeckId"
addedInput schema / properties / filters / properties / ai / description
Added value: +"AI filter ID from list_ai_filters to apply to incoming posts"
addedInput schema / properties / filters / properties / ai / maxLength
Added value: +128
addedInput schema / properties / filters / properties / ai / minLength
Added value: +1
addedInput schema / properties / filters / properties / ai / type
Added value: +"string"
removedInput schema / properties / filters / properties / excludeKeywords / $ref
Removed value: -"#/properties/filters/properties/includeKeywords"
addedInput schema / properties / filters / properties / excludeKeywords / additionalProperties
Added value: +false
addedInput schema / properties / filters / properties / excludeKeywords / description
Added value: +"Drop posts matching any field set here: all drops posts containing every word, any drops posts containing any of them, phrase drops posts containing the phrase"
addedInput schema / properties / filters / properties / excludeKeywords / properties
Added value: +{
+ "all": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Space-separated words; a post matches when its text contains every word"
+ },
+ "any": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Space-separated words; a post matches when its text contains at least one word"
+ },
+ "phrase": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Exact phrase; a post matches when its text contains it"
+ }
+}
addedInput schema / properties / filters / properties / excludeKeywords / type
Added value: +"object"
addedInput schema / properties / filters / properties / highlightColor / description
Added value: +"Synoptic app color for text matching includeKeywords and regex, such as lightYellow"
addedInput schema / properties / filters / properties / includeKeywords / description
Added value: +"Keep only posts matching every field set here; matching is a case-insensitive substring test"
addedInput schema / properties / filters / properties / includeKeywords / properties / all / description
Added value: +"Space-separated words; a post matches when its text contains every word"
addedInput schema / properties / filters / properties / includeKeywords / properties / any / description
Added value: +"Space-separated words; a post matches when its text contains at least one word"
addedInput schema / properties / filters / properties / includeKeywords / properties / phrase / description
Added value: +"Exact phrase; a post matches when its text contains it"
addedInput schema / properties / filters / properties / isHighlightEnabled / description
Added value: +"Highlight text matching includeKeywords and regex in the Synoptic app"
addedInput schema / properties / filters / properties / regex / description
Added value: +"Keep only posts whose text matches this /pattern/flags regex"
addedInput schema / properties / highlights / description
Added value: +"Highlight rules for post text in the Synoptic app"
addedInput schema / properties / highlights / properties / isEnabled / description
Added value: +"Whether the highlight rules apply"
addedInput schema / properties / highlights / properties / values / description
Added value: +"Rules that mark matching post text with a color"
addedInput schema / properties / highlights / properties / values / items / properties / color / description
Added value: +"Synoptic app color for matching text, such as lightYellow, green or red"
addedInput schema / properties / highlights / properties / values / items / properties / regex / description
Added value: +"Regular expression, either bare (case-insensitive) or /pattern/flags"
removedInput schema / properties / id / $ref
Removed value: -"#/properties/streamDeckId"
addedInput schema / properties / id / description
Added value: +"Collection ID from list_collections"
addedInput schema / properties / id / maxLength
Added value: +128
addedInput schema / properties / id / minLength
Added value: +1
addedInput schema / properties / id / type
Added value: +"string"
addedInput schema / properties / matchingSourcesOnly / description
Added value: +"Restrict the Synoptic app source picker to streams with market matching; defaults to false"
addedInput schema / properties / name / description
Added value: +"Collection display name"
addedInput schema / properties / sources / description
Added value: +"Source streams whose posts feed the collection"
addedInput schema / properties / sources / items / properties / customTargets / description
Added value: +"For a followed custom-target stream, the saved targets to include, from get_stream_custom_targets; omit for all of them. Not allowed on other streams; ignored on streams the user owns, which include every target"
changedInput schema / properties / sources / items / properties / sourceIds / anyOf
Previous value: -[
- {
- "items": {
- "$ref": "#/properties/streamDeckId"
- },
- "maxItems": 100,
- "type": "array"
- },
- {
- "type": "null"
- }
-]New value: +[
+ {
+ "items": {
+ "maxLength": 128,
+ "minLength": 1,
+ "type": "string"
+ },
+ "maxItems": 100,
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+]
addedInput schema / properties / sources / items / properties / sourceIds / description
Added value: +"Source IDs already routed to this stream to include, such as a post’s sourceId; omit or [] for every source"
removedInput schema / properties / sources / items / properties / streamId / $ref
Removed value: -"#/properties/streamDeckId"
addedInput schema / properties / sources / items / properties / streamId / description
Added value: +"Synoptic stream ID from search or streams_all"
addedInput schema / properties / sources / items / properties / streamId / maxLength
Added value: +128
addedInput schema / properties / sources / items / properties / streamId / minLength
Added value: +1
addedInput schema / properties / sources / items / properties / streamId / type
Added value: +"string"
addedInput schema / properties / streamDeckId / description
Added value: +"Deck ID from list_stream_decks"
addedOutput schema / properties / aiFilterId / description
Added value: +"Attached AI filter ID for get_ai_filter; null when none"
addedOutput schema / properties / columnWidth / description
Added value: +"Column width in pixels from set_collection_column_width; null when unset"
changedOutput schema / properties / filters / properties / excludeKeywords / anyOf
Previous value: -[
- {
- "$ref": "#/properties/filters/properties/includeKeywords/anyOf/0"
- },
- {
- "type": "null"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "all": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Space-separated words; a post matches when its text contains every word"
+ },
+ "any": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Space-separated words; a post matches when its text contains at least one word"
+ },
+ "phrase": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Exact phrase; a post matches when its text contains it"
+ }
+ },
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+]
changedOutput schema / properties / filters / properties / includeKeywords / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "properties": {
- "all": {
- "anyOf": [
- {
- "maxLength": 4000,
- "type": "string"
- },
- {
- "type": "null"
- }
- ]
- },
- "any": {
- "anyOf": [
- {
- "maxLength": 4000,
- "type": "string"
- },
- {
- "type": "null"
- }
- ]
- },
- "phrase": {
- "anyOf": [
- {
- "maxLength": 4000,
- "type": "string"
- },
- {
- "type": "null"
- }
- ]
- }
- },
- "type": "object"
- },
- {
- "type": "null"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "all": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Space-separated words; a post matches when its text contains every word"
+ },
+ "any": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Space-separated words; a post matches when its text contains at least one word"
+ },
+ "phrase": {
+ "anyOf": [
+ {
+ "maxLength": 4000,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Exact phrase; a post matches when its text contains it"
+ }
+ },
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+]
changedOutput schema / properties / highlights / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "properties": {
- "isEnabled": {
- "type": "boolean"
- },
- "values": {
- "items": {
- "additionalProperties": false,
- "properties": {
- "color": {
- "maxLength": 64,
- "minLength": 1,
- "type": "string"
- },
- "regex": {
- "maxLength": 4000,
- "minLength": 1,
- "type": "string"
- }
- },
- "required": [
- "regex",
- "color"
- ],
- "type": "object"
- },
- "maxItems": 15,
- "type": "array"
- }
- },
- "required": [
- "isEnabled",
- "values"
- ],
- "type": "object"
- },
- {
- "type": "null"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "isEnabled": {
+ "description": "Whether the highlight rules apply",
+ "type": "boolean"
+ },
+ "values": {
+ "description": "Rules that mark matching post text with a color",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "color": {
+ "description": "Synoptic app color for matching text, such as lightYellow, green or red",
+ "maxLength": 64,
+ "minLength": 1,
+ "type": "string"
+ },
+ "regex": {
+ "description": "Regular expression, either bare (case-insensitive) or /pattern/flags",
+ "maxLength": 4000,
+ "minLength": 1,
+ "type": "string"
+ }
+ },
+ "required": [
+ "regex",
+ "color"
+ ],
+ "type": "object"
+ },
+ "maxItems": 15,
+ "type": "array"
+ }
+ },
+ "required": [
+ "isEnabled",
+ "values"
+ ],
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+]
addedOutput schema / properties / id / description
Added value: +"ID to pass to this item’s get, update, delete or reorder tools"
addedOutput schema / properties / matchingSourcesOnly / description
Added value: +"Whether the Synoptic app source picker shows only streams with market matching"
addedOutput schema / properties / name / description
Added value: +"Display name"