Skip to main content
POST
/
customer-trust
/
questionnaires
/
file
Create file questionnaire
curl --request POST \
  --url https://api.vanta.com/v1/customer-trust/questionnaires/file \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form file='@example-file' \
  --form 'displayName=<string>' \
  --form 'ownerAssignment=<string>' \
  --form 'approverAssignment=<string>' \
  --form 'description=<string>' \
  --form 'companyUrl=<string>' \
  --form 'dueDate=<string>' \
  --form 'customerTrustAccountId=<string>' \
  --form 'includeUntaggedEntitiesForCategoryIds=<string>' \
  --form 'metadata=<string>' \
  --form 'tagAndCategoryIds=<string>'
{
  "id": "507f1f77bcf86cd799439011",
  "displayName": "SOC 2 Security Questionnaire",
  "type": "SPREADSHEET",
  "status": "IN_PROGRESS",
  "statusLog": [],
  "dueDate": "2024-12-31T00:00:00.000Z",
  "metadata": [
    {
      "key": "priority",
      "value": "high"
    }
  ],
  "tagAndCategoryIds": [],
  "createdDate": "2024-12-01T00:00:00.000Z",
  "updatedDate": "2024-12-14T00:00:00.000Z"
}

Documentation Index

Fetch the complete documentation index at: https://vanta.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

multipart/form-data
file
file
required
displayName
string
required

Display name for the questionnaire.

ownerAssignment
string

Owner to assign, as a JSON string: {"type": "User" | "Team", "id": ""}.

approverAssignment
string

Approver to assign, as a JSON string: {"type": "User" | "Team", "id": ""}.

description
string

Description of the questionnaire.

companyUrl
string

URL of the company associated with this questionnaire.

dueDate
string

Due date for questionnaire completion.

customerTrustAccountId
string

ID of the customer trust account to associate with this questionnaire.

includeUntaggedEntitiesForCategoryIds
string

Comma-separated category IDs for which to include untagged entities.

metadata
string

Custom key-value pairs, as a JSON string array: [{"key": "", "value": ""}]. Keys and values may contain alphanumeric characters, hyphens, underscores, and periods.

tagAndCategoryIds
string

Tags to assign, as a JSON string array: [{"categoryId": "", "tagId": ""}]. Replaces all existing tags.

Response

201 - application/json

File questionnaire created

id
string
required
displayName
string
required
type
enum<string>
required
Available options:
SPREADSHEET,
WEBSITE,
DOCUMENT
status
enum<string>
required
Available options:
APPROVED,
IN_PROGRESS,
IN_REVIEW,
READY_FOR_REVIEW,
WAITING_ON_ANSWERS,
ON_HOLD,
NO_LONGER_NEEDED,
COMPLETE,
ERROR,
EXTRACTING_QUESTIONS,
QUEUED_FOR_EXTRACTION,
PROCESSING,
QUEUED_FOR_PROCESSING,
WAITING_ON_COLUMN_SELECTION,
WAITING_ON_COLUMN_APPROVAL,
QUEUED_FOR_COLUMN_DETECTION,
DETECTING_COLUMNS
statusLog
object[]
required

The status change history log for the questionnaire. Entries are ordered by the most recent status change first.

tagAndCategoryIds
object[]
required

Tags assigned to this questionnaire. Each entry contains a categoryId and tagId.

createdDate
string<date-time>
required
updatedDate
string<date-time>
required
url
string
ownerAssignment
object

The owner assignment in actor form (User or Team).

approverAssignment
object

The approver assignment in actor form (User or Team).

customerTrustAccountId
string
dueDate
string<date-time>
metadata
object[]
completedDate
string<date-time>