String Tags¶
Name and Value Rules¶
- Tag names are case-insensitive.
- Letter casing is normalized to invariant uppercase, while whitespace is preserved.
reviewStateandReviewStateidentify the same tag;reviewStateis a distinct name. - Tag values are never case-normalized or trimmed. A value such as
Needs Reviewround-trips exactly as stored. list-tagsreturns tags in PowerPoint's native 1-based collection order. Each item includestagIndex,name, andvalue.- Missing tags return
success: false.delete-tagis not an idempotent success for a missing name. - Only string tags are supported. Binary tag APIs are intentionally not exposed.
Presentation Tags¶
Presentation tags use camelCase arguments on the hand-written presentation tool:
presentation(action: "set-tag", sessionId: ..., tagName: "ReviewState", tagValue: "Needs Review")
presentation(action: "get-tag", sessionId: ..., tagName: "reviewstate")
presentation(action: "list-tags", sessionId: ...)
presentation(action: "delete-tag", sessionId: ..., tagName: "REVIEWSTATE")
Slide Tags¶
Slide tags require a 1-based slide_index:
slide(action: "set-tag", session_id: ..., slide_index: 2,
tag_name: "Section", tag_value: "Financials")
slide(action: "get-tag", session_id: ..., slide_index: 2, tag_name: "section")
slide(action: "list-tags", session_id: ..., slide_index: 2)
slide(action: "delete-tag", session_id: ..., slide_index: 2, tag_name: "SECTION")
Shape Tags¶
Shape tags require 1-based slide_index and shape_index values:
shape(action: "set-tag", session_id: ..., slide_index: 2, shape_index: 3,
tag_name: "DataSource", tag_value: "Quarterly Results")
shape(action: "get-tag", session_id: ..., slide_index: 2, shape_index: 3,
tag_name: "datasource")
shape(action: "list-tags", session_id: ..., slide_index: 2, shape_index: 3)
shape(action: "delete-tag", session_id: ..., slide_index: 2, shape_index: 3,
tag_name: "DATASOURCE")