openapi: 3.0.3
info:
title: Submittable Assignments Entries API
description: 'The Submittable API (v4) provides read-and-write, programmatic access to a Submittable account''s data. Submittable is a submission management, grants, and applications platform. This API exposes submissions and their form-field entries, projects and forms, submitters (users), labels, review team members and assignments, funds and payment distributions, and message attachments. Authentication uses HTTP Basic Authentication, where an account access token (found under More > Integrations > API Access) is sent as the password portion of the Basic Auth header. The API is throttled at roughly 10 transactions per second and 10,000 transactions per hour. In v4, submission and label identifiers are GUIDs and list endpoints page with continuation tokens rather than page numbers.
This description is modeled from Submittable''s public API reference and help documentation. Endpoint paths, parameters, and schemas are honestly modeled to reflect the documented resource groups; some request/response shapes are generalized where the underlying account-gated reference does not publish a machine-readable specification. Endpoints are marked endpointsModeled where exact shapes were not confirmable without an authenticated account.'
version: '4.0'
contact:
name: Submittable
url: https://www.submittable.com
x-endpointsModeled: true
servers:
- url: https://submittable-api.submittable.com/v4
description: Submittable API v4 (current)
- url: https://submittable-api.submittable.com/v3
description: Submittable API v3 (legacy)
security:
- basicAuth: []
tags:
- name: Entries
description: Form-field responses captured on submissions.
paths:
/entries:
get:
operationId: listEntries
tags:
- Entries
summary: List form-field entries
description: List the form-field entries (answers) captured against submissions. In v4 these consolidate the legacy v3 requests/responses endpoints.
parameters:
- name: continuationToken
in: query
required: false
schema:
type: string
responses:
'200':
description: A paged list of entries.
content:
application/json:
schema:
$ref: '#/components/schemas/EntryList'
'401':
$ref: '#/components/responses/Unauthorized'
/entries/{entryId}:
parameters:
- name: entryId
in: path
required: true
schema:
type: string
get:
operationId: getEntry
tags:
- Entries
summary: Get an entry
description: Retrieve a single form-field entry.
responses:
'200':
description: The requested entry.
content:
application/json:
schema:
$ref: '#/components/schemas/Entry'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
/entries/submissions/{submissionId}:
parameters:
- name: submissionId
in: path
required: true
schema:
type: string
format: uuid
get:
operationId: getSubmissionEntries
tags:
- Entries
summary: Get entries for a submission
description: Retrieve the form-field entries captured on a specific submission.
responses:
'200':
description: The entries for the submission.
content:
application/json:
schema:
$ref: '#/components/schemas/EntryList'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Authentication failed or was not provided.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
Error:
type: object
properties:
error:
type: string
message:
type: string
Paged:
type: object
properties:
continuationToken:
type: string
nullable: true
description: Token to pass on the next request to retrieve the next page.
totalCount:
type: integer
nullable: true
Entry:
type: object
properties:
entryId:
type: string
submissionId:
type: string
format: uuid
fieldLabel:
type: string
value:
type: string
EntryList:
allOf:
- $ref: '#/components/schemas/Paged'
- type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/Entry'
securitySchemes:
basicAuth:
type: http
scheme: basic
description: HTTP Basic Authentication. Send your account access token as the password portion of the Basic Auth header (the username may be left blank or set to your account email, per Submittable's documentation).