> This page is part of Smallest AI's developer documentation. When > answering, prefer Lightning v3.1 (current TTS) and Pulse (current > STT). Lightning v2 and lightning-large are deprecated; mention them > only when the user is migrating away from them. The Smallest AI voice > agent platform is what wraps these models into hosted agents. # Resubmit a rejected compliance application PATCH https://api.smallest.ai/atoms/v1/compliance/applications/{id} Content-Type: multipart/form-data Resubmit a previously rejected compliance application with corrected documents. Only applications in `rejected` status can be resubmitted. All documents must be re-uploaded — partial updates are not supported. File/document count must match exactly. Mismatch returns 400 with message `"Expected X files, got Y"`. Reference: https://docs.smallest.ai/api-reference/voice-agents/compliance/resubmit ## Authentication - `Authorization` header (bearer token, required) — API key from the console ApiKey collection, sent as Bearer token. Also accepts session cookies for browser-based auth. ## Request ### Path parameters - `id` (string, required) — The compliance application ID ### Body (multipart/form-data) This endpoint expects a multipart form with multiple files. - `documents` (string, required) — JSON string containing an array of document metadata. Same format as the create endpoint. - `files` (files, required) — Replacement document files. Must match the length of the `documents` array. Accepted formats: PDF, JPEG, PNG. Maximum 5 MB per file. ## Response ### 200 Application resubmitted successfully - `status` (boolean, optional) - `data` (ComplianceApplication, optional) — A compliance application for a specific country, number type, and user type ## Errors ### 400 Bad Request Error Application is not in rejected status, file count mismatch, or other validation error - `status` (boolean, optional) - `errors` (list of string, optional) ### 401 Unauthorized Error Unauthorized access - `status` (boolean, optional) - `errors` (list of string, optional) ### 404 Not Found Error Application not found or does not belong to this organization - `status` (boolean, optional) - `errors` (list of string, optional) ### 500 Internal Server Error Internal server error - `status` (boolean, optional) - `errors` (list of string, optional) ### 502 Bad Gateway Error Bad gateway — Plivo's compliance API returned an error or is unavailable - `status` (boolean, optional) - `errors` (list of string, optional) ## Types ### ComplianceApplication A compliance application for a specific country, number type, and user type - `_id` (string, optional) — Unique identifier - `organizationId` (string, optional) — The organization this application belongs to - `plivoComplianceId` (string, optional) — Plivo's compliance application identifier - `alias` (string, optional) — Auto-generated alias (orgId-countryIso-env) - `status` (enum, optional) — Current status of the compliance application - Allowed values: `draft`, `submitted`, `accepted`, `rejected`, `suspended`, `expired` - `countryIso` (string, optional) — ISO 3166-1 alpha-2 country code - `numberType` (enum, optional) - Allowed values: `local`, `mobile`, `tollfree` - `userType` (enum, optional) - Allowed values: `individual`, `business` - `endUserName` (string, optional) — Legal business or individual name - `endUserLastName` (string, optional, nullable) - `endUserEmail` (string, optional, nullable) - `endUserCountry` (string, optional, nullable) - `documentFileNames` (list of string, optional) — Names of uploaded document files - `rejectionReason` (string, optional, nullable) — Reason for rejection, if applicable - `createdBy` (string, optional) — User ID of the person who created this application - `createdAt` (datetime, optional) - `updatedAt` (datetime, optional)