Skip to content
Start in HitKeep Cloud

List Ask AI history REST API

GET
/api/sites/{id}/ask-ai/history
curl --request GET \
--url 'https://hitkeep.com/api/sites/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/ask-ai/history?limit=20&offset=0' \
--cookie hk_token=<hk_token>

Returns audit-safe Ask AI run summaries for the selected site. The response includes run metadata, hashes, usage, and validated summary counts only; raw prompts, full answers, provider payloads, headers, and credentials are not returned. Requires a human dashboard session with site.view; API client bearer tokens and shared dashboard routes are rejected.

id
required
string format: uuid
limit
integer
default: 20 >= 1 <= 100

Maximum runs to return.

offset
integer
0

Number of runs to skip.

Ask AI history

Media typeapplication/json
object
entries
required
Array<object>
object
action_count
required
integer
action_types
required
Array<string>
Allowed values: navigate download_export
answer_chars
required
integer
chart_count
required
integer
chart_types
required
Array<string>
Allowed values: line bar table
citation_count
required
integer
created_at
required
string format: date-time
error_category
string
input_hash

SHA-256 hash of the audit-safe request snapshot.

string
input_tokens
required
integer
lifecycle_event_count
required
integer
model
string
output_hash

SHA-256 hash of the validated Ask AI output.

string
output_tokens
required
integer
provider
string
run_id
required
string format: uuid
status
required
string
Allowed values: reserved success failure
template_version
string
tool_call_count
required
integer
tool_names
required
Array<string>
total_tokens
required
integer
has_more
required
boolean
limit
required
integer
offset
required
integer
total
required
integer
Example
{
"entries": [
{
"action_types": [
"navigate"
],
"chart_types": [
"line"
],
"status": "reserved"
}
]
}

Invalid Ask AI history request

Media typeapplication/json
object
message
string
Examplegenerated
{
"message": "example"
}

Dashboard session required or forbidden

Media typeapplication/json
object
message
string
Examplegenerated
{
"message": "example"
}

Ask AI unavailable

Media typeapplication/json
object
available
required
boolean
budget_exhausted
required
boolean
enabled
required
boolean
model
string
provider
string
status
required
string
Allowed values: disabled not_configured available budget_exhausted
Example
{
"status": "disabled"
}