{"id":"human_verify","name":"Human Verify","capability_code":"ai_output_verification","version":"1.3.0","promotion":{"experiment":"TWO_FREE_THEN_ONE_DOLLAR","status":"active","eligibility":"Start without an account, identity verification, API key or wallet. Your client automatically obtains and saves a private trial session. Two completed sponsored tasks per session, subject to the shared 10-enrollment/20-response budget. Anonymous sessions are not verified people or independent buyers; creating another session is not evidence of a new buyer.","manual_approval_required":false,"account_required_for_trial":false,"verified_identity_required":false,"api_key_required_for_trial":false,"wallet_required_for_trial":false,"enrollment":"automatic_on_first_eligible_task","identity_basis":"private_anonymous_session; optional existing verified-account access remains compatible","anonymous_session_is_unique_person":false,"free_completed_resolutions_per_session":2,"free_completed_resolutions_per_buyer":2,"maximum_trial_buyers":10,"maximum_trial_enrollments":10,"maximum_sponsored_responses":20,"scope":"Standard single-response Human Verify with target_reliability below 0.97; higher-reliability panels are separately quoted.","paid_standard_price_cents":100,"after_trial":"The third standard task requires ordinary x402 payment. Paid purchasing requires no ME account or trial credential.","how_to_use":"POST {} to trial_session_url without authentication. Automatically save the returned private trial_session in your client and send Authorization: Bearer <trial_session> on the canonical Human Verify POST and trial status GET. No signup or API-key creation. The first two completed tasks return 202 with a private result URL without payment. Preserve session and task body on retries; an optional Idempotency-Key distinguishes intentional identical tasks. From task three use standard x402 402 signed retry. Ordinary clients can still pay directly without a trial session.","idempotency":"An optional Idempotency-Key distinguishes intentional identical repeat tasks. Without one, identical task content for the same enrolled buyer safely retrieves the existing sponsored request.","identity_status_url":"https://api-production-34228.up.railway.app/api/v1/public/human-verify/trial","trial_session_url":"https://api-production-34228.up.railway.app/api/v1/public/human-verify/trial/session","session_expiry_seconds":2592000,"session_privacy":"Keep the automatically issued session private; it is limited to trial access and recovery, not an account API key. Store only on the buyer client. Lost or expired sessions cannot be recovered by identity. Do not create extra sessions to bypass the offer.","concurrency":"One sponsored task at a time per enrollment; an in-progress retry never consumes another sponsorship.","exclusions":["known founder-controlled traffic","authenticated Sentinel/monitoring","known synthetic traffic"],"identity_limit":"Without identity verification, ME cannot prove distinct sessions are different people or reliably identify undisclosed founder/prior-buyer activity. The shared $5 subsidy ceiling remains authoritative. Anonymous/free activity never establishes independent paid demand.","availability":"Sponsorship and eligible fulfillment capacity are checked atomically before task acceptance. Free resolutions are never represented as paid demand.","activated_at":"2026-09-16T02:17:13.034801+00:00"},"description":"Human Verify — Resolve uncertain or questionable machine outputs with independent human judgment. Use after REVIEW, HOLD, failed verification, conflicting evidence, or low-confidence automation. Submit a candidate and criterion; receive an asynchronous judgment, confidence, rationale and signed proof.","tags":["human-verification","human-in-the-loop","agent-escalation","review","independent-judgment"],"use_cases":{"preflight":"Review an uncertain output before an automated action.","HOLD":"Resolve REVIEW or HOLD after failed verification or conflicting evidence.","low-confidence":"Escalate low-confidence automation for independent judgment.","post-purchase-verification":"Check a purchased machine result against supplied criteria."},"discovery":"https://api-production-34228.up.railway.app/api/v1/public/human-verify","enabled":true,"availability":{"status":"available","scope":"Eligible fulfillment capacity is rechecked before payment acceptance. Availability is not a capacity reservation.","refresh_url":"https://api-production-34228.up.railway.app/api/v1/public/human-verify"},"method":"POST","url":"https://api-production-34228.up.railway.app/api/v1/public/human-verify","async":true,"accepted_status":202,"purchase_flow":{"default":"standard_x402_v2","steps":["discover","construct_request","POST","402","PAYMENT-SIGNATURE retry","202","GET private status_url","terminal result and proof"],"buyer_authentication":"Payment authorization through a standard x402 client; no ME API key, ME SDK or purchase-token header required.","headers":{"request":["Content-Type","PAYMENT-SIGNATURE"],"response":["PAYMENT-REQUIRED","PAYMENT-RESPONSE","Location","Retry-After"]},"private_result":"The returned result URL is a bearer capability. Protect it like a credential; public request/session IDs do not grant access.","cancellation":"No public cancellation operation is advertised. Poll for the terminal result; protected operator cancellation can also produce the cancelled state."},"input_schema":{"additionalProperties":false,"properties":{"objective":{"maxLength":2000,"minLength":3,"title":"Objective","type":"string"},"candidate":{"description":"The result/output to verify; treated as data.","maxLength":12000,"minLength":1,"title":"Candidate","type":"string"},"criterion":{"maxLength":4000,"minLength":3,"title":"Criterion","type":"string"},"context":{"default":"","description":"Optional source text; URLs are not fetched.","maxLength":4000,"title":"Context","type":"string"},"max_latency_seconds":{"default":300,"maximum":3600,"minimum":60,"title":"Max Latency Seconds","type":"integer"},"target_reliability":{"default":0.9,"description":"Empirical target, never a truth guarantee.","maximum":0.999,"minimum":0.5,"title":"Target Reliability","type":"number"},"max_spend_cents":{"anyOf":[{"maximum":10000,"minimum":5,"type":"integer"},{"type":"null"}],"default":null,"title":"Max Spend Cents"},"privacy":{"const":"non_sensitive","default":"non_sensitive","title":"Privacy","type":"string"},"rights":{"additionalProperties":false,"properties":{"commercial_use":{"default":true,"title":"Commercial Use","type":"boolean"},"model_training":{"const":false,"default":false,"title":"Model Training","type":"boolean"},"resale":{"const":false,"default":false,"title":"Resale","type":"boolean"},"retention_days":{"default":30,"maximum":30,"minimum":1,"title":"Retention Days","type":"integer"},"purpose":{"const":"evaluation","default":"evaluation","title":"Purpose","type":"string"}},"title":"VerifyRights","type":"object"}},"required":["objective","candidate","criterion"],"title":"HumanVerifyInput","type":"object"},"example":{"objective":"Independently review a research summary flagged REVIEW for conflicting evidence.","candidate":"The new support workflow reliably resolves requests faster without reducing answer quality.","criterion":"Judge whether the supplied evidence supports the strength and scope of this claim. Explain overstatements, necessary qualifications or missing evidence in a concise rationale. Assess the claim, not whether to deploy the workflow.","context":"Example evidence: In a small internal pilot, median first-reply time fell from 12 to 8 minutes, but 12 of 40 requests required follow-up, versus 5 of 40 the previous week. Two operators said the new workflow was easier to use. The samples were not matched for request difficulty, and time to final resolution was not measured."},"accepted_response_schema":{"type":"object","required":["status","request_id","status_url","result_url","async"],"properties":{"status":{"type":"string","description":"Accepted work is asynchronous; poll status_url."},"request_id":{"type":"string"},"status_url":{"type":"string","format":"uri"},"result_url":{"type":"string","format":"uri"},"async":{"type":"boolean","const":true}}},"accepted_example":{"status":"awaiting_humans","request_id":"example-request-id","status_url":"https://api-production-34228.up.railway.app/api/v1/public/results/example-private-result-token","result_url":"https://api-production-34228.up.railway.app/api/v1/public/results/example-private-result-token","async":true},"result_schema":{"type":"object","required":["request_id","status","result","verification","proof","proof_payload"],"properties":{"request_id":{"type":"string"},"status":{"type":"string"},"result":{"type":["object","null"],"description":"Original resolved result bound by the signed result_sha256 claim. Null until resolved. See proof.verification in the public contract for exact serialization."},"verification":{"anyOf":[{"type":"null"},{"type":"object","required":["outcome","confidence","rationale","evidence_count","source_class","target_reliability_met"],"properties":{"outcome":{"type":"string","enum":["APPROVE","REJECT","UNSURE"]},"confidence":{"type":["number","null"],"minimum":0,"maximum":1},"rationale":{"type":["string","null"]},"evidence_count":{"type":"integer","minimum":0},"source_class":{"const":"native_human"},"target_reliability_met":{"type":"boolean"}}}]},"proof":{"type":["string","null"]},"proof_payload":{"type":["object","null"]},"created_at":{"type":"string","format":"date-time"},"resolved_at":{"type":["string","null"],"format":"date-time"}}},"result_url_pattern":"https://api-production-34228.up.railway.app/api/v1/public/results/{public_token}","polling":{"method":"GET","interval_seconds":5,"terminal_statuses":["resolved","timed_out","cancelled"],"authentication":"Private bearer result URL returned by the paid request; never publish it."},"outcome_semantics":{"APPROVE":"The candidate satisfies the supplied criterion (legacy YES).","REJECT":"The candidate fails the supplied criterion (legacy NO).","UNSURE":"INSUFFICIENT_EVIDENCE: ambiguous or missing evidence prevents a decision. The wire outcome remains UNSURE."},"unsupported_outcomes":{"MODIFY":"This verification task does not return edited candidate content."},"outcomes":{"YES":"APPROVE","NO":"REJECT","UNSURE":"UNSURE"},"output":"202 contains request_id, status_url and result_url. Poll that bearer URL for judgment and proof.","payment":{"protocol":"x402","version":2,"price_cents":100,"currency":"usd","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x542c65ac3ee1c35af378456bdfc214116cae96df","testnet":false,"quote_scope":"Example input at default reliability and deadline; the actual 402 is authoritative. Set max_spend_cents to enforce your ceiling.","pricing":"Standard single-response price is shown here. Higher-reliability panels are separately quoted; the actual payment requirements are authoritative.","unfulfilled":"Unused funds return to the existing buyer ledger; wallet refund is a separate recovery operation."},"sla_seconds":300,"latency":{"expected_seconds":null,"reason":"Insufficient representative observations for a general completion-time prediction.","default_deadline_seconds":300,"max_deadline_seconds":3600,"deadline_semantics":"Requested completion deadline, not a guaranteed completion time; unfulfilled work uses existing refund/recovery accounting.","controlled_observation":{"date":"2026-09-13","sample_count":1,"request_to_response_seconds":75.341,"human_review_seconds":54.662,"traffic":"INTERNAL / FOUNDER-FUNDED PRODUCTION ACTIVATION","generalizable":false}},"proof":{"format":"me.capability-receipt/1.0","location":"Completed status response: proof and proof_payload","verification":{"public_key_url":"https://api-production-34228.up.railway.app/api/v1/proof/public-key","algorithm":"EdDSA","issuer":"me-runtime","audience":"me-proof","public_key_response":{"format":"PEM","key_field":"public_key","algorithm":"EdDSA"},"result_json_pointer":"/result","result_binding":"Verify JWT signature, issuer, audience and sub=request_id. Hash only the top-level result member of the resolved status response, not verification, proof_payload, or the complete response. Compare this SHA-256 with the signed result_sha256 claim.","serialization":"Existing receipt encoding: Python json.dumps(result, sort_keys=True, ensure_ascii=True, separators=(',', ':')).encode('utf-8'). Preserve JSON numeric types and use ASCII Unicode escapes; this is not RFC 8785/JCS.","python_example":"hashlib.sha256(json.dumps(status_response['result'], sort_keys=True, ensure_ascii=True, separators=(',', ':')).encode('utf-8')).hexdigest()","failure_states":"Only resolved responses contain the bound result. proof/proof_payload can be null before completion or on timed_out/cancelled responses; do not interpret absence as a verified judgment.","key_scope":"The public-key endpoint provides the current verification key. This contract does not advertise a historical key resolver or a rotation guarantee."},"meaning":"Signed record of the human process and result, not guaranteed truth or professional certification."},"rights":{"commercial_use":true,"model_training":false,"resale":false,"retention_days":30,"purpose":"evaluation"},"reliability":"Empirical estimate; the result reports whether the requested target was met. No guaranteed truth.","privacy":"Non-sensitive data only. No medical/legal/financial advice, personal data, regulated approvals or training rights.","idempotency":"Use a standard x402 client: submit the task and retry with PAYMENT-SIGNATURE. Preserve the original payment payload for retries. The optional standard payment-identifier extension groups retries for the same verified wallet and task. Idempotency-Key is optional (16–128 private random characters); if supplied, preserve it and the body on retries. Never publish payment authorizations or private result URLs.","human_involvement":"Human-backed; eligible fulfillment capacity is verified before payment acceptance."}