Paperform Partial Submissions API

The Partial Submissions API from Paperform — 3 operation(s) for partial submissions.

Operations 5

GET /forms/{slug_or_id}/partial-submissions List form partial submissions #
GET /forms/{slug_or_id}/partial-submissions/{id} Get form partial submission #
DELETE /forms/{slug_or_id}/partial-submissions/{id} Delete form partial submission #
GET /partial-submissions/{id} Get partial submission #
DELETE /partial-submissions/{id} Delete partial submission #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/paperform-partial-submissions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

paperform-partial-submissions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Paperform Partial Submissions API
  contact:
    name: Paperform API Support
    url: https://paperform.co
    email: support@paperform.co
servers:
- url: https://api.paperform.co/v1
security:
- bearerAuth: []
tags:
- name: Partial Submissions
paths:
  /forms/{slug_or_id}/partial-submissions:
    get:
      parameters:
      - $ref: '#/components/parameters/slugOrID'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/skip'
      - $ref: '#/components/parameters/afterId'
      - $ref: '#/components/parameters/beforeId'
      - $ref: '#/components/parameters/beforeDate'
      - $ref: '#/components/parameters/afterDate'
      - $ref: '#/components/parameters/sort'
      description: This endpoint returns a list of partial submissions for a form matching the requested parameters. This feature is available as part of the Standard API.
      operationId: listFormPartialSubmissions
      tags:
      - Partial Submissions
      responses:
        '200':
          description: Successfully returned a list of partial submissions
          content:
            application/json:
              schema:
                type: object
                allOf:
                - properties:
                    status:
                      type: string
                      enum:
                      - ok
                    results:
                      type: object
                      properties:
                        partial-submissions:
                          type: array
                          items:
                            $ref: '#/components/schemas/PartialSubmission'
                - $ref: '#/components/schemas/Pagination'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/Validation'
        '429':
          $ref: '#/components/responses/Throttled'
        5XX:
          $ref: '#/components/responses/Unexpected'
      summary: List form partial submissions
      x-summary-source: derived
  /forms/{slug_or_id}/partial-submissions/{id}:
    get:
      parameters:
      - $ref: '#/components/parameters/slugOrID'
      - $ref: '#/components/parameters/uuid'
      description: This endpoint returns a specific partial submission by ID. This feature is available as part of the Standard API.
      operationId: getFormPartialSubmission
      tags:
      - Partial Submissions
      responses:
        '200':
          description: 'Successfully returned a single partial submission that matched the provided ID

            '
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                    - ok
                  results:
                    type: object
                    properties:
                      partial-submission:
                        $ref: '#/components/schemas/PartialSubmission'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/Throttled'
        5XX:
          $ref: '#/components/responses/Unexpected'
      summary: Get form partial submission
      x-summary-source: derived
    delete:
      parameters:
      - $ref: '#/components/parameters/slugOrID'
      - $ref: '#/components/parameters/uuid'
      description: This endpoint deletes a specific partial submission by ID. This feature is available as part of the Standard API.
      operationId: deleteFormPartialSubmission
      tags:
      - Partial Submissions
      responses:
        '200':
          description: 'Successfully deleted a single partial submission that matched the provided ID

            '
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                    - ok
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/Throttled'
        5XX:
          $ref: '#/components/responses/Unexpected'
      summary: Delete form partial submission
      x-summary-source: derived
  /partial-submissions/{id}:
    get:
      parameters:
      - $ref: '#/components/parameters/uuid'
      description: This endpoint returns a specific partial submission by ID. This feature is available as part of the Standard API.
      operationId: getPartialSubmission
      tags:
      - Partial Submissions
      responses:
        '200':
          description: 'Successfully returned a single partial submission that matched the provided ID

            '
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                    - ok
                  results:
                    type: object
                    properties:
                      partial-submission:
                        $ref: '#/components/schemas/PartialSubmission'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/Throttled'
        5XX:
          $ref: '#/components/responses/Unexpected'
      summary: Get partial submission
      x-summary-source: derived
    delete:
      parameters:
      - $ref: '#/components/parameters/uuid'
      description: This endpoint deletes a specific partial submission by ID. This feature is available as part of the Standard API.
      operationId: deletePartialSubmission
      tags:
      - Partial Submissions
      responses:
        '200':
          description: 'Successfully deleted a single partial submission that matched the provided ID

            '
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                    - ok
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/Throttled'
        5XX:
          $ref: '#/components/responses/Unexpected'
      summary: Delete partial submission
      x-summary-source: derived
components:
  parameters:
    skip:
      in: query
      name: skip
      schema:
        type: integer
        default: 0
      description: Number of results to skip in the result set.
    sort:
      in: query
      name: sort
      schema:
        type: string
        enum:
        - ASC
        - DESC
        default: DESC
      description: The direction to sort in. Results are sorted by `created_at`, and defaults to `"DESC"`.
      example: ASC
    limit:
      in: query
      name: limit
      schema:
        type: integer
        maximum: 100
        default: 20
      description: The number or results to return.
    beforeId:
      in: query
      name: before_id
      schema:
        type: string
      description: Return results before the provided ID.
      example: 5d40fdaf174b4c0007043072
    uuid:
      in: path
      name: id
      required: true
      schema:
        type: string
        format: uuid
      description: The id of the record to get.
      example: 5d40fdaf174b4c0007043072
    afterDate:
      in: query
      name: after_date
      schema:
        type: string
        format: date-time
      description: Return results created before this date (UTC). Overwritten by `after_id`.
      example: '2019-06-11T20:36:29Z'
    afterId:
      in: query
      name: after_id
      schema:
        type: string
      description: Return results after the provided ID.
      example: 5d40fdaf174b4c0007043072
    slugOrID:
      in: path
      name: slug_or_id
      required: true
      schema:
        type: string
      description: The form's slug, custom slug or ID.
      example: my-form-slug
    beforeDate:
      in: query
      name: before_date
      schema:
        type: string
        format: date-time
      description: Return results created on or after this date-time (UTC). Overwritten by `before_id`.
      example: '2019-06-11T20:36:29Z'
  responses:
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            type: object
            allOf:
            - $ref: '#/components/schemas/Error'
            - properties:
                error_type:
                  type: string
                  enum:
                  - authentication
                  description: Token not provided for not valid.
    Forbidden:
      description: Not Permitted
      content:
        application/json:
          schema:
            type: object
            allOf:
            - $ref: '#/components/schemas/Error'
            - properties:
                error_type:
                  type: string
                  enum:
                  - permission
                  description: Not permitted to access requested resource.
    NotFound:
      description: Not Found
      content:
        application/json:
          schema:
            type: object
            allOf:
            - $ref: '#/components/schemas/Error'
            - properties:
                error_type:
                  type: string
                  enum:
                  - not_found
                  description: The requested resource was not found.
    Unexpected:
      description: Unexpected Error
      content:
        application/json:
          schema:
            type: object
            allOf:
            - $ref: '#/components/schemas/Error'
            - properties:
                error_type:
                  type: string
                  enum:
                  - server_error
                  description: An unexpected error.
    BadRequest:
      description: Invalid Request
      content:
        application/json:
          schema:
            type: object
            allOf:
            - $ref: '#/components/schemas/Error'
            - properties:
                error_type:
                  type: string
                  enum:
                  - validation
                  description: Invalid parameters provided.
    Validation:
      description: Validation Error
      content:
        application/json:
          schema:
            type: object
            allOf:
            - $ref: '#/components/schemas/Error'
            - properties:
                error_type:
                  type: string
                  enum:
                  - validation
                  description: Invalid parameters provided.
    Throttled:
      description: Too Many Requests
      content:
        text/html:
          schema:
            type: string
            enum:
            - Too many requests.
  schemas:
    Pagination:
      type: object
      properties:
        total:
          type: integer
          description: The total number of items.
          readOnly: true
          example: 57
        has_more:
          description: Whether there are more items.
          type: boolean
          example: true
          readOnly: true
        limit:
          description: The limit of items per page.
          type: integer
          example: 20
          default: 20
        skip:
          description: The number of items to skip.
          type: integer
          default: 0
          example: 0
    Error:
      type: object
      properties:
        status:
          type: string
          enum:
          - error
          example: error
        message:
          type: string
          description: An error message.
          example: Invalid request
        details:
          type: array
          description: Suggested actions to resolve the error.
          items:
            type: string
    PartialSubmission:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The unique identifier of the Partial Submission.
          example: 5d40fdaf174b4c0007043072
          readOnly: true
        form_id:
          type: string
          format: uuid
          description: The id of the Form for the Partial Submission.
          example: 5d40fdaf174b4c0007043072
          readOnly: true
        data:
          $ref: '#/components/schemas/SubmissionData'
        last_answered:
          type:
          - string
          - 'null'
        submitted_at:
          type:
          - string
          - 'null'
          format: date-string
          description: If the partial submission was submitted, this will be set to a formatted date-time string in your account timezone indicating the time the submission was made.
          readOnly: true
          example: '2019-04-14T09:00:00.000Z'
        updated_at:
          type: string
          description: A formatted date-time string in your account timezone indicating the last time the partial submission was updated.
          readOnly: true
          example: '2019-04-14T09:00:00.000Z'
        created_at:
          type: string
          description: A formatted date-time string in your account timezone indicating the time the partial submission was created.
          readOnly: true
          example: '2019-04-14T09:00:00.000Z'
        account_timezone:
          type: string
          description: The configured timezone for your account.
          readOnly: true
          example: America/New_York
        submitted_at_utc:
          type: string
          format: date-time
          description: A formatted date-time string in UTC indicating the time the form was created.
          readOnly: true
          example: '2019-04-14T09:00:00.000Z'
        created_at_utc:
          type: string
          format: date-time
          description: A formatted date-time string in UTC indicating the time the form was created.
          readOnly: true
          example: '2019-04-14T09:00:00.000Z'
        updated_at_utc:
          type: string
          format: date-time
          description: A formatted date-time string in UTC indicating the time the form was created.
          readOnly: true
          example: '2019-04-14T09:00:00.000Z'
    SubmissionData:
      type: object
      description: The `data` object stores the answers from the form. Each value is stored against it's key. Note that custom keys are not used here.
      properties:
        KEY:
          oneOf:
          - type: string
          - type: number
          - type: array
            items:
              oneOf:
              - type: string
              - type: object
          - type: object
          - type: boolean
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
x-readme:
  explorer-enabled: true
  proxy-enabled: true