Release a submission

POST
/v1/forms/{id}/submissions/{submission_id}/release

Not spam: a held or spam submission becomes accepted and is delivered (webhooks, notifications, contacts), and Risk records its assessment as legitimate. Releasing an accepted submission returns it as is.

Authorization

bearerAuth
headerAuthorizationBearer <token>

A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.

Path Parameters

id*string

The form's id.

submission_id*string

The submission's id.

Header Parameters

Coss-Version?"2026-10-10"

The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.

Value in"2026-10-10"

Response Body

The released submission.

application/json
  1. response
object*"form_submission"
Value in"form_submission"
id*string
form_id*string
status*string

accepted: delivered (webhooks, notifications, contacts). held: Risk asked for a review. spam: refused by Risk, the content check or the honeypot. pending_confirmation: waiting for the submitter's email link.

Value in"pending_confirmation""accepted""held""spam"
data*

Field name → value; a field posted several times has an array.

submitter_email*string|null
files*array<>
spam_reason*|
Value in"honeypot""risk_block""risk_review""content"null
risk*|

Risk's assessment; null when none ran (honeypot).

ip*string|null
user_agent*string|null
origin*string|null
referrer*string|null
confirmed_at*|
Formatdate-time
accepted_at*|
Formatdate-time
released_at*|
Formatdate-time
sandbox*boolean
created_at*string
Formatdate-time
import { Coss } from "coss";const coss = new Coss({  apiKey: process.env.COSS_API_KEY,  baseUrl: "https://api.coss.com",});const { data, error } = await coss.forms.submissions.release("form_01kd2m8n3p4q5r6s7t8v9w0x1y", "fsub_01kd2m9a0b1c2d3e4f5g6h7j8k");
{  "object": "form_submission",  "id": "fsub_01kd2m9a0b1c2d3e4f5g6h7j8k",  "form_id": "form_01kd2m8n3p4q5r6s7t8v9w0x1y",  "status": "accepted",  "data": {    "name": "Ada Lovelace",    "email": "ada@example.com",    "message": "Hello!"  },  "submitter_email": "ada@example.com",  "files": [],  "spam_reason": null,  "risk": {    "assessment_id": "rsk_01kd2m9a0b1c2d3e4f5g6h7j8n",    "decision": "allow",    "score": 0.04  },  "ip": "203.0.113.7",  "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)",  "origin": "https://www.example.com",  "referrer": "https://www.example.com/contact",  "confirmed_at": null,  "accepted_at": "2026-10-29T10:00:00.000Z",  "released_at": null,  "sandbox": false,  "created_at": "2026-10-29T10:00:00.000Z"}