Cognito Forms Entries API
The Entries API from Cognito Forms — 5 operation(s) for entries.
The Entries API from Cognito Forms — 5 operation(s) for entries.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/cognito-forms-entries-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Cognito Forms Entries API
version: '1.1'
description: Cognito Forms is an online form builder for collecting and managing submission data. This API enables automated flows to trigger when entries are created, updated, or deleted and provides actions to create, update, and retrieve entries. Integrate Cognito Forms with other services to route data, process uploaded files, and automate business workflows.
contact:
name: Cognito Forms Support
email: support@cognitoforms.com
url: https://www.cognitoforms.com/support
servers:
- url: https://cognitoforms.com
description: Cognito Forms API Server
security:
- oauth2Auth:
- admin
tags:
- name: Entries
paths:
/api/forms/{form}/entries:
post:
tags:
- Entries
summary: Create entry
description: Creates a new entry.
operationId: CreateEntry
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
requestBody:
description: The entry to create for the form
required: true
content:
application/json:
schema:
type: object
additionalProperties: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
additionalProperties: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/api/forms/{form}/entries/{entryId}:
get:
tags:
- Entries
summary: Get entry
description: Gets an entry.
operationId: GetEntry
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
- name: entryId
in: path
description: The entry id
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
additionalProperties: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
patch:
tags:
- Entries
summary: Update entry
description: Updates an entry.
operationId: EditEntry
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
- name: entryId
in: path
description: The entry id
required: true
schema:
type: string
requestBody:
description: The updated entry data
required: true
content:
application/json:
schema:
type: object
additionalProperties: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
additionalProperties: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
delete:
tags:
- Entries
summary: Delete entry
description: Delete an entry.
operationId: DeleteEntry
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
- name: entryId
in: path
description: The entry id
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/api/forms/{form}/entries/{entry}/documents/{templateNumber}:
get:
tags:
- Entries
summary: Get Document
description: Gets a document generated from a form entry.
operationId: GetDocument
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
- name: entry
in: path
description: The entry id
required: true
schema:
type: string
- name: templateNumber
in: path
description: The template number
required: true
schema:
type: integer
responses:
'200':
description: OK
content:
application/pdf:
schema:
$ref: '#/components/schemas/FileDataRef'
application/vnd.openxmlformats-officedocument.wordprocessingml.document:
schema:
$ref: '#/components/schemas/FileDataRef'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/api/forms/{form}/import-entries:
post:
tags:
- Entries
summary: Import Entries
description: Creates, updates, or deletes entries using provided file content.
operationId: ImportEntries
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- File
- ImportMode
properties:
File:
type: string
format: binary
description: The file (.xlsx or .csv) containing the entries to import.
ImportMode:
type: string
description: The mode for the import
enum:
- CreateNew
- UpdateExisting
- SyncEntries
Email:
type: string
format: email
description: The email address to receive import notifications
MatchEntriesUsing:
type: string
description: An entry ID substitute field for matching
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ImportResult'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalServerError'
/api/forms/{form}/import-status/{importId}:
get:
tags:
- Entries
summary: Get Import Status
description: Gets the current status of an import and returns the number of successful and unsuccessful entries.
operationId: GetImportStatus
parameters:
- name: form
in: path
description: The name of the form
required: true
schema:
type: string
- name: importId
in: path
description: The Import ID
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ImportStatus'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalServerError'
components:
schemas:
ImportStatus:
description: The status of an import
type: object
properties:
Id:
description: The ID of the import
type: string
Status:
description: The status of the import
type: string
ErrorMessage:
description: A message describing why the import failed
type: string
SuccessfulEntries:
description: The number of entries successfully imported
type: integer
UnsuccessfulEntries:
description: The number of entries that failed to import
type: integer
TotalEntries:
description: The total number of entries in the import
type: integer
ImportLink:
description: The link to the entries page to download the annotated file
type: string
FileDataRef:
description: A file reference that includes file data and metadata
type: object
properties:
Id:
description: The unique id of the file.
type: string
Name:
description: The name of the file
type: string
ContentType:
description: The content type of the file.
type: string
Size:
description: The size of the file.
type: integer
File:
description: The URL of the file.
type: string
Content:
description: The file content
type: string
format: byte
Error:
description: An error
type: object
properties:
Message:
description: A message describing the error
type: string
Type:
description: The type of the error
type: string
SupportCode:
description: A support code identifying the specific error
type: string
Data:
description: Data related to the error
type: object
ImportResult:
description: The result of an import request
type: object
properties:
Id:
description: The ID of the import
type: string
Status:
description: The status of the import
type: string
ErrorMessage:
description: A message describing why the import failed
type: string
responses:
Unauthorized:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Forbidden:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
InternalServerError:
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
TooManyRequests:
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
oauth2Auth:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://cognitoforms.com/api-connection
tokenUrl: https://cognitoforms.com/admin/oauthtoken
scopes:
admin: Full administrative access