Register what a service should deliver
witness_register_termsUse this when about to depend on a public HTTPS service and you want neutral evidence of what it delivers. Pass service_url; checks default to HTTP 200 and a non-empty body (also JSON keys, latency, size, regex). Returns a terms_id; then call witness_delivery. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| checks | No | 1-8 checks, each {"id": "http_status_in", "allowed": [200]}, {"id": "content_type_is", "value": "application/json"}, {"id": "non_empty"}, {"id": "json_parses"}, {"id": "json_required_keys", "keys": ["a.b"]}, {"id": "json_path_equals", "path": "a.b", "value": 1}, {"id": "max_latency_ms", "limit": 2000}, {"id": "max_bytes", "limit": 20000}, {"id": "text_contains", "value": "ok"} or {"id": "regex", "pattern": "ok|up"}. | |
| seller_ref | No | Optional: name of the supplier. Defaults to the host of service_url. | |
| service_url | Yes | Public https URL of the service. | |
| research_consent | No | Optional, default false. true lets this record be counted, never named, in GAIP's monthly aggregate research figures (for example for insurers). | |
| data_classification | No | PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data. | PUBLIC |