---
title: "Create a new information request"
method: POST
path: "/audits/{auditId}/information-requests"
tags: ["Audits"]
---

# Create a new information request

`POST /audits/{auditId}/information-requests`

Creates a new information request for an audit during audit setup or as requirements evolve.

After creating all information requests, use POST /audits/{auditId}/share-information-request-list
to make them visible to the customer organization. Until shared, requests remain in draft state
visible only to auditors.

New requests are created in an initial state indicating evidence is needed. The status
progresses through the workflow: initial state → awaiting review → approved or flagged.

Rate limit: 600 requests / minute.

## Path parameters

- `auditId` string, required

## Request body

- CreateInformationRequestInput — Input for creating a new information request. New requests are created in an initial state by default.
  - `uniqueId` string, required — External unique ID to prevent duplicate requests across audit systems. Must be unique within the audit. Used for idempotency.
  - `title` string, required — Short, descriptive title summarizing what is being requested. Must be at least 1 character.
  - `requestType` 'POINT_IN_TIME' | 'POPULATION' | 'SAMPLE', required — Type of information request, defining what scope of evidence is needed. - POINT_IN_TIME: Evidence for a specific moment (e.g., current state of a policy) - POPULATION: Evidence covering all items in a category (e.g., all employees) - SAMPLE: Evidence for a representative sample (e.g., 10 random customer records)
  - `description` string, nullable — Detailed description explaining what evidence is needed. Helps the customer understand what to submit. Optional.
  - `frameworkCodes` string[], required — Framework codes this request addresses. An empty array if no framework codes are associated.
  - `cadence` 'ANNUALLY' | 'BIANNUALLY' | 'MONTHLY' | 'QUARTERLY' — Frequency cadence for the information request, indicating how often it recurs.
  - `dueDate` string, date-time, nullable — Deadline for fulfilling this request. Null or omitted if no deadline. Format: ISO 8601 UTC timestamp.
  - `evidenceCaptureDate` string, date-time, nullable — Start date of the audit period. Evidence before this date may not be accepted. Null or omitted if not restricted. Format: ISO 8601 UTC timestamp.
  - `additionalControlIds` string[] — Control IDs to link directly to this request, beyond those automatically mapped from framework codes. Each must be the `id` of an existing control in the customer's organization (the identifier returned by the controls endpoints). The request is rejected if any ID does not match a control. Omit or pass an empty array for no direct control links.

## Response `201`

Information request created

- InformationRequest — Information Request resource representing a single request for audit evidence from a customer. An information request is created by an auditor and shared with the customer organization. The customer then uploads evidence, which the auditor reviews and either approves or flags for issues.
  - `id` string, required — The unique identifier for the information request within Vanta's system. This is the primary identifier used in all API endpoints. Format: ObjectId as a string (e.g., "6890e473dce1da5d8406f5e7")
  - `uniqueId` string, required — External unique ID to prevent duplicates across different audit systems. Used for idempotency when syncing data between external audit management systems and Vanta. Unlike `id`, this value is provided by the external system.
  - `additionalControlIds` string[], required — Additional control IDs beyond those automatically mapped from framework codes. Allows manual association with specific controls when automatic mapping is insufficient. Each ID should reference a valid control in your audit framework.
  - `approvalStatus` 'NEEDS_EVIDENCE' | 'READY_FOR_AUDIT' | 'AUDITOR_APPROVED' | 'AUDITOR_FLAGGED', required — Current approval status of the information request, tracking its lifecycle through the audit process. The status progresses through the workflow: initial state → awaiting review → approved or flagged. Status can move between awaiting review and flagged states as evidence is reviewed and resubmitted.
  - `cadence` 'ANNUALLY' | 'BIANNUALLY' | 'MONTHLY' | 'QUARTERLY', required — Frequency cadence for the information request, indicating how often it recurs.
  - `frameworkCodes` string[], required — The framework codes this request addresses. Links the request to specific compliance requirements. Can be an empty array if no framework codes are associated. These codes correspond to standards like SOC 2, ISO 27001, etc.
  - `description` string, nullable, required — Detailed description explaining what evidence is needed and why. Should provide clear instructions to help the customer understand what to submit.
  - `dueDate` string, date-time, nullable, required — The deadline by which the customer must fulfill this request. Null if no specific deadline is set. Format: ISO 8601 UTC timestamp.
  - `evidenceCaptureDate` string, date-time, nullable, required — The earliest date for which evidence should be captured. Evidence dated before this date may not be accepted. Null if not restricted. Format: ISO 8601 UTC timestamp.
  - `requestId` string, nullable, required — Non-unique external reference ID for this request. Unlike `uniqueId` which must be unique, `requestId` is for display/reference purposes only (e.g., "REQ-123"). Null if not provided.
  - `requestType` 'POINT_IN_TIME' | 'POPULATION' | 'SAMPLE', required — Type of information request, defining what scope of evidence is needed. - POINT_IN_TIME: Evidence for a specific moment (e.g., current state of a policy) - POPULATION: Evidence covering all items in a category (e.g., all employees) - SAMPLE: Evidence for a representative sample (e.g., 10 random customer records)
  - `title` string, required — Short, descriptive title summarizing what is being requested.
  - `creationDate` string, date-time, required — Timestamp when the request was created in the system. Format: ISO 8601 UTC timestamp.
  - `modificationDate` string, date-time, required — Timestamp when the request was last modified. Format: ISO 8601 UTC timestamp.
  - `deletionDate` string, date-time, nullable, required — Timestamp when the request was soft-deleted. Null if the request has not been deleted. Soft deletes allow retaining history while hiding the request from normal operations. Format: ISO 8601 UTC timestamp.
  - `ownerAssignment` union, required — Represents either a user or a team owning a resource.
    - object
      - `displayName` string, required
      - `id` string, required
      - `type` 'user', required
    - object
      - `displayName` string, required
      - `id` string, required
      - `type` 'team', required

---

[API](https://skmtc.net/vanta/apis/build-integrations.md) · [All operations](https://skmtc.net/vanta/apis/build-integrations/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vanta/build-integrations/revisions/6c1f7590538b/schema)
