TaskHawk Systems · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Taskhawktech Com Media API
9 actions
9 updates
phrasing
extends
openapi/taskhawktech-com-media-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for TaskHawk Systems's API. It is a proposal applied on top of the contract, not a document TaskHawk Systems publishes.
What the actions change
x-apievangelist-phrasing
Targets 9
$.info
$.paths['/media/capabilities'].get
$.paths['/media/verify'].get
$.paths['/media/verify'].post
$.paths['/media/status/{certificate_id}'].get
$.paths['/media/approve/{certificate_id}'].post
$.paths['/media/revoke/{certificate_id}'].post
$.paths['/media/attest'].post
$.paths['/media/verify/{certificate_id}'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Taskhawktech Com Media API
version: 1.0.0
extends: openapi/taskhawktech-com-media-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 8
- target: $.paths['/media/capabilities'].get
update:
x-apievangelist-phrasing:
intent: Get the media authority's capabilities
effect: read
questions:
- What can the media attestation service do, in machine-readable form?
- Which media authority features are available to agent clients?
instructions:
- text: Fetch the media authority capabilities document.
- text: Show me what media attestation features are supported for agents.
method: generated
generated: '2026-10-01'
- target: $.paths['/media/verify'].get
update:
x-apievangelist-phrasing:
intent: Open the browser media verifier page
effect: read
questions:
- Is there a web page where a person can verify a media file without uploading it?
- Where is the human-facing tool that hashes a file in the browser for verification?
instructions:
- text: Open the human-facing media verifier page.
- text: Load the in-browser verification tool that hashes files client-side.
method: generated
generated: '2026-10-01'
- target: $.paths['/media/verify'].post
update:
x-apievangelist-phrasing:
intent: Verify a media file hash against its certificate
effect: read
questions:
- How do I check that a file's hash matches its attestation certificate?
- Can anyone verify an attested photo or video without an API key?
instructions:
- text: Verify hash {media_hash} against certificate {certificate_id}.
slots:
media_hash: requestBody.media_hash
certificate_id: requestBody.certificate_id
- text: Check whether the file with SHA-256 {media_hash} matches attestation certificate {certificate_id}.
slots:
media_hash: requestBody.media_hash
certificate_id: requestBody.certificate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/media/status/{certificate_id}'].get
update:
x-apievangelist-phrasing:
intent: Check a media certificate's lifecycle status
effect: read
questions:
- Has a media certificate been approved, denied or revoked?
- What lifecycle state is an attestation certificate in right now?
instructions:
- text: Get the lifecycle status of certificate {certificate_id}.
slots:
certificate_id: path.certificate_id
- text: Tell me whether certificate {certificate_id} is still active or was revoked.
slots:
certificate_id: path.certificate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/media/approve/{certificate_id}'].post
update:
x-apievangelist-phrasing:
intent: Approve or deny a certificate for campaign use
effect: write
questions:
- How do I approve an attested asset for use in a brand campaign?
- Can I deny a media certificate and record the reason?
- Can approval limit an asset to a territory and an expiry date?
instructions:
- text: Mark certificate {certificate_id} as {decision} for campaign {campaign_id}.
slots:
certificate_id: path.certificate_id
decision: requestBody.decision
campaign_id: requestBody.campaign_id
- text: Approve certificate {certificate_id} for {permitted_use} in {territory} until {expiry}.
slots:
certificate_id: path.certificate_id
permitted_use: requestBody.permitted_use
territory: requestBody.territory
expiry: requestBody.expiry
method: generated
generated: '2026-10-01'
- target: $.paths['/media/revoke/{certificate_id}'].post
update:
x-apievangelist-phrasing:
intent: Revoke a media attestation certificate
effect: destructive
questions:
- How do I revoke a media certificate that should no longer be trusted?
- Can I record who revoked a certificate and why?
instructions:
- text: Revoke certificate {certificate_id} because {reason}.
slots:
certificate_id: path.certificate_id
reason: requestBody.reason
- text: Revoke media certificate {certificate_id} for {reason}, revoked by {revoked_by}.
slots:
certificate_id: path.certificate_id
reason: requestBody.reason
revoked_by: requestBody.revoked_by
method: generated
generated: '2026-10-01'
- target: $.paths['/media/attest'].post
update:
x-apievangelist-phrasing:
intent: Attest a media file's integrity by its hash
effect: write
questions:
- How do I get a signed certificate proving a photo or video hasn't been altered?
- Can I attest media without uploading the file itself?
- Can I record the AI model and prompt hash behind a generated image?
- What is the maximum file size I can attest?
instructions:
- text: Attest {media_type} with hash {media_hash}, {media_size_bytes} bytes, captured {capture_timestamp_utc}, for agent {agent_id}.
slots:
media_type: requestBody.media_type
media_hash: requestBody.media_hash
media_size_bytes: requestBody.media_size_bytes
capture_timestamp_utc: requestBody.capture_timestamp_utc
agent_id: requestBody.agent_id
- text: Certify {media_hash} ({media_type}, {media_size_bytes} bytes, shot {capture_timestamp_utc}) for {agent_id} in campaign {campaign_id}.
slots:
media_hash: requestBody.media_hash
media_type: requestBody.media_type
media_size_bytes: requestBody.media_size_bytes
capture_timestamp_utc: requestBody.capture_timestamp_utc
agent_id: requestBody.agent_id
campaign_id: requestBody.campaign_id
method: generated
generated: '2026-10-01'
- target: $.paths['/media/verify/{certificate_id}'].get
update:
x-apievangelist-phrasing:
intent: Look up a full media attestation certificate
effect: read
questions:
- How do I retrieve the full attestation certificate for independent verification?
- Can I see every field recorded in a media certificate by its ID?
instructions:
- text: Look up the full attestation certificate {certificate_id}.
slots:
certificate_id: path.certificate_id
- text: Pull certificate {certificate_id} with all its details so I can verify it myself.
slots:
certificate_id: path.certificate_id
method: generated
generated: '2026-10-01'