---
title: "Read claim-scoped pilot continuity status"
method: GET
path: "/provider/pilot-status"
---

# Read claim-scoped pilot continuity status

`GET /provider/pilot-status`

Provider-key-authenticated read-only status for the key's own DNS-verified claim. It includes provider setup, exact owned offer and terms state, and only handoff or outcome events that have crossed the NHS-observed handoff boundary. It returns no credentials, attribution material, search receipts, controlled intent, queries, identities, contacts, network data, company hashes, or action URLs.

## Query parameters

- `limit` integer

## Response `200`

Current status for the authenticated provider claim

- ProviderPilotStatusResponse
  - `pilot_status` ProviderPilotStatus, required
    - `as_of` string, date-time, required — Database wall-clock boundary for this repeatable-read report.
    - `provider_claim_id` string, uuid, required
    - `domain` string, required — Domain derived from the authenticated provider claim.
    - `claim_status` 'verified', required
    - `verification_last_succeeded_at` string, date-time, required
    - `verification_next_check_at` string, date-time
    - `verification_consecutive_failures` integer, required
    - `company_acceptance_id` string, uuid
    - `company_accepted_at` string, date-time
    - `company_owner_verified` boolean, required
    - `company_owner_verified_at` string, date-time
    - `offers` ProviderPilotOfferStatus[], required
      - `offer_id` string, uuid, required
      - `status` 'draft' | 'active' | 'paused', required
      - `version` integer, required
      - `name` string, required
      - `action_type` 'lead' | 'demo' | 'trial' | 'signup' | 'purchase' | 'quote' | 'application' | 'booking', required
      - `charge_event` 'accepted' | 'activated' | 'converted', required
      - `bounty_cents` integer, required
      - `currency` 'usd', required
      - `billing_mode` 'prepaid' | 'terms', required — The bounded launch pilot activates terms offers only; prepaid is retained solely for historical status compatibility.
      - `terms_credit_limit_cents` integer
      - `terms_period_days` integer
      - `commercial_terms_contract_version` 'nhs-provider-commercial-terms-v1', required
      - `commercial_terms_sha256` string, required
      - `provider_mor_acknowledgement_required` true, required
      - `provider_acknowledges_merchant_of_record` boolean, required — True only for the active provider-accepted contract; this is not an independent NHS verification.
      - `latest_acceptance_id` string, uuid
      - `latest_acceptance_type` 'terms_acceptance' | 'terms_renewal'
      - `latest_acceptance_at` string, date-time
      - `latest_acceptance_valid_until` string, date-time
      - `latest_acceptance_owner_verified` boolean, required
      - `latest_acceptance_owner_verified_at` string, date-time
      - `current_terms_owner_verified` boolean, required
      - `current_terms_valid_until` string, date-time
      - `renewal_eligible` boolean, required
      - `activation_ready` boolean, required — Read-only readiness evidence; it does not activate the offer.
    - `recent_observed_handoffs` ProviderPilotRecentEvent[], required
      - `ticket_id` string, uuid, required
      - `offer_id` string, uuid, required
      - `offer_version` integer, required
      - `ticket_status` 'created' | 'redirected' | 'accepted' | 'activated' | 'converted' | 'rejected' | 'duplicate' | 'invalid' | 'expired' | 'revoked', required
      - `handoff_receipt_id` string, uuid, required
      - `handoff_observed_at` string, date-time, required
      - `outcome_receipt_id` string, uuid
      - `outcome` 'accepted' | 'activated' | 'converted' | 'rejected' | 'duplicate' | 'invalid'
      - `charge_status` 'charged' | 'credited' | 'none'
      - `billed_cents` integer
      - `outcome_recorded_at` string, date-time
  - `evidence_scope` string, required — Claim-key-scoped continuity and explicit redaction boundary.

## Other responses

- `400` — Invalid limit
- `401` — Valid active claim-scoped provider key required
- `404` — Authenticated claim is no longer verified and fresh
- `429` — Temporary provider read safety limit exceeded
- `500` — Provider pilot status query failed
- `503` — Provider key authentication unavailable

---

[API](https://skmtc.net/nothumansearch/apis/not-human-search-api.md) · [All operations](https://skmtc.net/nothumansearch/apis/not-human-search-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nothumansearch/not-human-search-api/revisions/bdae4e208ce7/schema)
