Developers

Two API calls.
Nothing to configure in advance.

Fetch governed behaviour into your prompt, then grade the reply once it has been sent. A first integration can be running within fifteen minutes. Call sites, profiles, retention and connectors are optional, and each can be added when your organisation needs what it provides.

1 · Get a key

Issued from your console. Test keys (hr_test_) write only to a test system.

2 · Add the block

Cache it with your prompt and pin it by hash. New versions are adopted on your schedule.

3 · Grade after send

Off the response path. Coverage, findings and the sealed record follow.

Quickstart

# 1 · Governed behaviour for your system prompt
curl https://harmwise.digitalsafeguard.org/api/v1/policy/block?jurisdiction=AU \
  -H "Authorization: Bearer $HARMWISE_KEY"
# → { "block": "…", "hash": "sha256:…", "session_block": "…", "referral": {…} }

# 2 · After the reply has been sent, grade it
curl https://harmwise.digitalsafeguard.org/api/v1/grade \
  -H "Authorization: Bearer $HARMWISE_KEY" -H "Content-Type: application/json" \
  -d '{"candidate":"<the reply>","turns":[{"role":"user","content":"<what they said>"}],
       "jurisdiction":"AU","policy_hash":"sha256:…"}'

Prompt caching: the block is byte identical for a given module version, so it can sit inside a cached prefix. Per session text is always delivered as a separate block and never interpolated into the cached one.

Playground, live

Grade a real reply against the real validators.

The playground runs the published framework's deterministic validators, the referral fitness checks and the record seal. It follows the same code path as production, on a public, rate limited key that writes only to the Playground organisation.

Uses a public test key. Test keys write only to the Playground's test system — never to a production record.

Grade a reply to see the findings, the referral assessment and the sealed record it writes.

Integration patterns

Pattern 1 · Instruction

Where you control the system prompt, compose the block into it and grade each reply after it is sent. This pattern delivers the greatest safety value and the shortest path to production.

Pattern 2 · Tool and transcript

Where your assistant runs on a platform whose prompt you cannot edit, give the platform's model Harmwise Guardrail as a tool (referrals/rank) through MCP or the platform's own action mechanism, and grade from the transcript export.

Platform connectors

Connectors package Harmwise Guardrail as a native extension of a given platform. The first is being built for the pilot customer's platform. Others will follow, in order of demand, for Microsoft Copilot Studio, Genesys Cloud, Salesforce, Amazon Connect and Lex, Dialogflow CX, ServiceNow and Zendesk.

Defaults: nothing declared

Not declaredDefaultDeclaring adds
Call siteOne anonymous surfaceFindings attributed per surface
ProfileSafety validators only · coverage: safety_onlyTask findings, and the ability to claim a gate
EscalationA route to a human must existChecked against your own service level
JurisdictionPer request, from the argumentPer-region reporting
EnvironmentFrom the key prefix: hr_test_ never touches the recordNothing; the key already did it
RetentionNone: signals, metadata and a hash onlyQuote spans, on a TTL you choose

When something fails

  • Harmwise Guardrail unreachable

    Serve the last good block you hold. The reply goes out as normal, and the grade is sent once the service returns.

  • Grader error or timeout

    Recorded as instrument_error. The fault is ours; it is never counted against you and never reported as clean.

  • Router low confidence

    The baseline block for every enabled module is served, flagged degraded.

  • Directory has no local coverage

    The emergency number and national 24/7 services are offered, and the reply states that local services are not yet covered.

Never block, never edit, never strip. These are design constraints, not settings.

Baseline · in development

Establish what your channel is already hearing.

Baseline reads a sample of your own conversation history and reports how many disclosures occurred, of what kind and how they were handled. It quotes the most serious examples verbatim and shows what the core safety floor would have changed. It runs on your own machine, and nothing leaves it.

For enterprise environments, Baseline is delivered as a container that runs inside your own tenancy, with a redaction pass before any analysis.

# illustrative output
$ npx harmwise baseline ./transcripts.jsonl

  10,000 conversations · deterministic · no network
  ─────────────────────────────────────────────
  disclosures detected        214   (2.1%)
    economic abuse             96
    tech-facilitated abuse     58
    stated immediate danger     7
  handled with an S0 finding   11
  referral dead-ends           38
  → report.html

API reference

MethodEndpointPurpose
GET/api/v1/policy/blockCached block (byte-stable, hash, ETag) + session block + ranked referral
POST/api/v1/gradeGrade a reply after send; writes a sealed record
POST/api/v1/referrals/rankFitness-ranked services and composed referral text
GET/api/v1/records/verifyRecompute your system's hash chain against the published head
GET/api/v1/healthLiveness plus a real grader round-trip

Errors are returned as RFC 9457 problem details. Keys carry the prefixes hr_live_ and hr_test_ so that secret scanners can detect them.