What’s newRelease 10 · Oct 23, 2026Ask Ollive in natural languageRead the changelog

Monitoring

List finding runs

See the runs behind one finding, newest first.

POSThttps://api.ollive.ai/api/finding-runs/query/v1
Safe to retryPagedv1

How it works

Each run comes with its pattern and the steps Ollive flagged: why, and which turns of the transcript they rest on.

For everything Ollive checked in one of these runs, send its run_id to List results. To read it, use Get a transcript.

Authorization

  • Authorizationheaderrequired

    Your API key, after the word Bearer, like this: Bearer ollive_sk_…. Create a key.

Request body

application/json

  • agent_idstringrequired

    The finding’s agent.

  • rule_idstringrequired

    The finding’s rule: rule.id from List findings.

  • rule_set_idstring (uuid)

    Only the rule as checked in this rule set.

  • pattern_idstring

    Only runs in this pattern, from List finding patterns.

  • startstring (date-time)

    The start of the time range, included. Defaults to 30 days before end.

  • endstring (date-time)

    The end of the time range, not included. Defaults to now.

  • limitintegerdefault 25up to 100

    How many to return per page.

  • cursorstring

    The next_cursor from the previous page.

  • include_totalboolean

    Also return total_count, the number of matches across all pages. Counting takes extra time, so ask only when you show it.

  • sourcestringdefault platform

    Which runs to count: platform for ones Ollive collected, api or mcp for ones sent to Ollive.

    platformapimcp

Response

The runs. An empty list if there are none.

  • dataobject[]required

    One entry per run.

    • run_idstringrequired

      The run’s ID.

    • pattern_idstringrequired

      The pattern it belongs to.

    • ruleobjectrequired

      The finding’s rule.

      • idstringrequired

        The rule’s ID. Other endpoints call this rule_id.

      • rule_set_idstring (uuid)

        The rule set it belongs to.

      • severitystringrequired

        How serious it is. unknown when the rule has no rating.

        criticalhighmediumlowunknown
      • citationsstring[]required

        Where the rule comes from, such as a section number.

      • textstring

        What the rule asks of your agent.

      • titlestring

        A short name for the rule, when its rule set gives one.

      • descriptionstring

        A longer explanation, when its rule set gives one.

    • severitystringrequired

      How serious it was in this run. unknown when the rule has no rating.

      criticalhighmediumlowunknown
    • occurred_atstring (date-time)

      When the run happened.

    • duration_msinteger

      How long it lasted, in milliseconds.

    • flagged_stepsobject[]required

      Where in the run the rule wasn’t met.

      • reasonstringrequired

        Why it was flagged.

      • turn_indicesinteger[]required

        The turns involved.

    • flagged_turn_indicesinteger[]required

      Every turn that was flagged.

  • total_countinteger

    How many match, across all pages. Only with include_total.

  • has_morebooleanrequired

    Whether there is another page.

  • next_cursorstring

    Send this as cursor to get the next page. Not included on the last page.

← List finding patternsList results →