verification.score

Deprecated name for verification.score.final

The same event and payload as verification.score.final, under its old name. Existing subscriptions keep working. Subscribe new endpoints to verification.score.final. An endpoint subscribed to both names receives one event per play, under the new name.

Payload

A point-in-time echo of the play's FINAL score, not a live-updating view. Sent as verification.score.final, or as verification.score to endpoints subscribed under the deprecated name. tracks.*.eventCount are raw received-event counts per track, not the lifecycle-completeness bonus used internally to compute score. If every Harvester reading arrived after the score became final, tracks.harvester.eventCount is 0, because score doesn't include them.

  • eventTypestringRequired

    One of verification.score.final, verification.score

  • eventIdstringRequired

    Stable per-event id, constant across retries (injected at delivery). Dedupe on this.

  • playIdstringRequired
  • externalIdstring or nullRequired

    Echoed from the play's wrapper, if any.

  • attestConfigIdstringRequired

    The filter settings this play cleared. For an endpoint subscribed through /v1, this is the permissive config created automatically when the endpoint subscribed to verification.score.

  • attestedAtstringRequired

    Epoch (seconds) this event was generated.

  • tracksobjectRequired
    Show 3 fields
    • passportobjectRequired
      Show 1 field
      • eventCountintegerRequired
    • playerobjectRequired
      Show 1 field
      • eventCountintegerRequired
    • harvesterobjectRequired
      Show 1 field
      • eventCountintegerRequired
  • scoreobjectRequired
    Show 5 fields
    • finalinteger or nullRequired
    • bandstring or nullRequired

      One of LOW, MEDIUM, HIGH, MAX

    • phasestringRequired

      Always FINAL

      Always FINAL — this event is only sent once a play settles.

    • policyVersionstring or nullRequired
    • scoredAtstring or nullRequired
  • metadataobjectRequired

    Your own data, returned unchanged — never scored. Empty object when the wrapper carried none.

  • attemptIdstring

    Per-attempt id; CHANGES on each retry. Do not dedupe on this.

Handling this event

Verify the signature, reply with a 2xx within 20 seconds, then process the event in the background. Retries reuse the same event id, so deduplicate on it.