---
title: "Request Verification"
method: POST
path: "/completions/{completion_id}/verification-jobs"
tags: ["completions"]
---

# Request Verification

`POST /completions/{completion_id}/verification-jobs`

## Request

- Base URL: `https://app.tascan.io/api/v1`
- URL: `https://app.tascan.io/api/v1/completions/{completion_id}/verification-jobs`
- Auth: HTTP bearer

Enqueue an autonomous verification job for a task completion (Verification Layer V2 + V7 doc_check, POST /completions/:completion_id/verification-jobs): http_probe checks a URL (params url, and optionally expect_status, expect_content_type, expect_sha256), doc_check runs a named policy against params.url and params.policy_id. Read the result with tascan_list_verifications once the job runs. Write tier.

## Path parameters

- `completion_id` string, required

## Request body

- object
  - `check_type` 'http_probe' | 'doc_check', required: Which autonomous check to run.
  - `params` object, required: For http_probe: url, and optionally expect_status, expect_content_type, expect_sha256. For doc_check: url and policy_id, where policy_id names an active doc_check policy.
  - `run_at` string: Optional ISO timestamp to schedule the job for (default now).
  - `idempotency_key` string: Optional replay key (up to 200 chars).

## Response `200`

Success. JSON body: { data: ... } or an error object { error, message }.

## Other responses

- `4XX`: Client error (validation, auth, scope, rate limit).

---

[API](https://skmtc.dev/tascan/apis/tascan-api.md) · [All operations](https://skmtc.dev/tascan/apis/tascan-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tascan/apis/tascan-api/revisions/56fcd2861498?raw)
