Flatfile subpackage_documents API

The subpackage_documents API from Flatfile — 2 operation(s) for subpackage_documents.

OpenAPI Specification

flatfile-subpackage-documents-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API Reference subpackage_accounts subpackage_documents API
  version: 1.0.0
servers:
- url: https://api.x.flatfile.com/v1
tags:
- name: subpackage_documents
paths:
  /spaces/{spaceId}/documents:
    get:
      operationId: list
      summary: List documents
      description: Returns all documents for a space
      tags:
      - subpackage_documents
      parameters:
      - name: spaceId
        in: path
        description: ID of space to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:SpaceId'
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      - name: X-Disable-Hooks
        in: header
        required: true
        schema:
          type: string
          enum:
          - 'true'
      responses:
        '200':
          description: Response with status 200
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_documents:ListDocumentsResponse'
        '400':
          description: Error response with status 400
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
        '404':
          description: Error response with status 404
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
    post:
      operationId: create
      summary: Create a document
      description: Add a new document to the space
      tags:
      - subpackage_documents
      parameters:
      - name: spaceId
        in: path
        description: ID of space to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:SpaceId'
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      - name: X-Disable-Hooks
        in: header
        required: true
        schema:
          type: string
          enum:
          - 'true'
      responses:
        '200':
          description: Response with status 200
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_documents:DocumentResponse'
        '400':
          description: Error response with status 400
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
        '404':
          description: Error response with status 404
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/type_documents:DocumentConfig'
  /spaces/{spaceId}/documents/{documentId}:
    get:
      operationId: get
      summary: Get a document
      description: Returns a single document
      tags:
      - subpackage_documents
      parameters:
      - name: spaceId
        in: path
        description: ID of space to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:SpaceId'
      - name: documentId
        in: path
        description: ID of document to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:DocumentId'
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      - name: X-Disable-Hooks
        in: header
        required: true
        schema:
          type: string
          enum:
          - 'true'
      responses:
        '200':
          description: Response with status 200
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_documents:DocumentResponse'
        '400':
          description: Error response with status 400
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
        '404':
          description: Error response with status 404
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
    patch:
      operationId: update
      summary: Update a document
      description: updates a single document, for only the body and title
      tags:
      - subpackage_documents
      parameters:
      - name: spaceId
        in: path
        description: ID of space to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:SpaceId'
      - name: documentId
        in: path
        description: ID of document to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:DocumentId'
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      - name: X-Disable-Hooks
        in: header
        required: true
        schema:
          type: string
          enum:
          - 'true'
      responses:
        '200':
          description: Response with status 200
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_documents:DocumentResponse'
        '400':
          description: Error response with status 400
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
        '404':
          description: Error response with status 404
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/type_documents:DocumentConfig'
    delete:
      operationId: delete
      summary: Delete a document
      description: Deletes a single document
      tags:
      - subpackage_documents
      parameters:
      - name: spaceId
        in: path
        description: ID of space to return
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:SpaceId'
      - name: documentId
        in: path
        description: ID of document to delete
        required: true
        schema:
          $ref: '#/components/schemas/type_commons:DocumentId'
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      - name: X-Disable-Hooks
        in: header
        required: true
        schema:
          type: string
          enum:
          - 'true'
      responses:
        '200':
          description: Response with status 200
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Success'
        '400':
          description: Error response with status 400
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
        '404':
          description: Error response with status 404
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/type_commons:Errors'
components:
  schemas:
    type_commons:Success:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/type_commons:SuccessData'
      description: Informs whether or not a request was successful
      title: Success
    type_documents:DocumentConfig:
      type: object
      properties:
        title:
          type: string
        body:
          type: string
        treatments:
          type: array
          items:
            type: string
          description: Certain treatments will cause your Document to look or behave differently.
        actions:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:Action'
      required:
      - title
      - body
      title: DocumentConfig
    type_commons:Guide:
      type: object
      properties:
        content:
          type: string
          description: Markdown guidance for this action
      required:
      - content
      title: Guide
    type_commons:InputConstraintType:
      type: string
      enum:
      - required
      title: InputConstraintType
    type_commons:ActionMode:
      type: string
      enum:
      - foreground
      - background
      - toolbarBlocking
      description: Foreground actions will prevent interacting with the resource until complete
      title: ActionMode
    type_commons:ActionSchedule:
      type: string
      enum:
      - weekly
      - daily
      - hourly
      title: ActionSchedule
    type_commons:ActionMessageType:
      type: string
      enum:
      - error
      - info
      title: ActionMessageType
    type_commons:ActionId:
      type: string
      description: Action ID
      title: ActionId
    type_documents:DocumentResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/type_documents:Document'
      required:
      - data
      title: DocumentResponse
    type_commons:InputConstraint:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/type_commons:InputConstraintType'
      required:
      - type
      title: InputConstraint
    type_commons:ActionMessage:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/type_commons:ActionMessageType'
        content:
          type: string
      required:
      - type
      - content
      title: ActionMessage
    type_commons:EnvironmentId:
      type: string
      description: Environment ID
      title: EnvironmentId
    type_commons:InputForm:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/type_commons:InputFormType'
        fields:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:InputField'
      required:
      - type
      - fields
      title: InputForm
    type_commons:Error:
      type: object
      properties:
        key:
          type: string
        message:
          type: string
      required:
      - message
      title: Error
    type_commons:InputField:
      type: object
      properties:
        key:
          type: string
          description: Unique key for a Field.
        label:
          type: string
          description: Visible name of a Field.
        description:
          type: string
          description: Brief description below the name of the Field.
        type:
          type: string
          description: Field Types inform the user interface how to sort and display data.
        defaultValue:
          description: Default value for a Field.
        config:
          $ref: '#/components/schemas/type_commons:InputConfig'
          description: Additional configuration for enum Fields.
        constraints:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:InputConstraint'
          description: Indicate additional validations that will be applied to the Field.
      required:
      - key
      - label
      - type
      title: InputField
    type_commons:SuccessData:
      type: object
      properties:
        success:
          type: boolean
      required:
      - success
      title: SuccessData
    type_commons:ActionConstraint:
      oneOf:
      - type: object
        properties:
          type:
            type: string
            enum:
            - hasAllValid
            description: 'Discriminator value: hasAllValid'
          ignoreSelection:
            type: boolean
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - hasSelection
            description: 'Discriminator value: hasSelection'
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - hasData
            description: 'Discriminator value: hasData'
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - hasColumnEnabled
            description: 'Discriminator value: hasColumnEnabled'
        required:
        - type
      discriminator:
        propertyName: type
      title: ActionConstraint
    type_commons:ActionMount:
      oneOf:
      - type: object
        properties:
          type:
            type: string
            enum:
            - sheet
            description: 'Discriminator value: sheet'
          slugs:
            type: array
            items:
              type: string
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - workbook
            description: 'Discriminator value: workbook'
          slugs:
            type: array
            items:
              type: string
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - field
            description: 'Discriminator value: field'
          keys:
            type: array
            items:
              type: string
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - document
            description: 'Discriminator value: document'
        required:
        - type
      - type: object
        properties:
          type:
            type: string
            enum:
            - file
            description: 'Discriminator value: file'
        required:
        - type
      discriminator:
        propertyName: type
      title: ActionMount
    type_commons:InputFormType:
      type: string
      enum:
      - simple
      title: InputFormType
    type_commons:InputConfig:
      type: object
      properties:
        options:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:InputEnumPropertyOption'
      required:
      - options
      title: InputConfig
    type_documents:ListDocumentsResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/type_documents:Document'
      required:
      - data
      title: ListDocumentsResponse
    type_commons:InputEnumPropertyOption:
      type: object
      properties:
        label:
          type: string
          description: A visual label for this option, defaults to value if not provided
        description:
          type: string
          description: A short description for this option
        color:
          type: string
          description: An optional color to assign this option
        icon:
          type: string
          description: A reference pointer to a previously registered icon
        meta:
          type: object
          additionalProperties:
            description: Any type
          description: An arbitrary JSON object to be associated with this option and made available to hooks
        value:
          description: The value or ID of this option. This value will be sent in egress. The type is a string | integer | boolean.
      required:
      - value
      title: InputEnumPropertyOption
    type_commons:Errors:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:Error'
      required:
      - errors
      title: Errors
    type_commons:Action:
      type: object
      properties:
        slug:
          type: string
          description: '**This is deprecated. Use `operation` instead.**'
        operation:
          type: string
          description: This will become the job operation that is triggered
        mode:
          $ref: '#/components/schemas/type_commons:ActionMode'
          description: Foreground and toolbarBlocking action mode will prevent interacting with the resource until complete
        tooltip:
          type: string
          description: A tooltip that appears when hovering the action button
        messages:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:ActionMessage'
        type:
          type: string
          description: '**This is deprecated.**'
        description:
          type: string
          description: The text that appears in the dialog after the action is clicked.
        schedule:
          $ref: '#/components/schemas/type_commons:ActionSchedule'
          description: Determines if the action should happen on a regular cadence.
        primary:
          type: boolean
          description: A primary action will be more visibly present, whether in Sheet or Workbook.
        confirm:
          type: boolean
          description: Whether to show a modal to confirm the action
        icon:
          type: string
          description: Icon will work on primary actions. It will only accept an already existing Flatfile design system icon.
        requireAllValid:
          type: boolean
          description: '**This is deprecated. Use `constraints` instead.**'
        requireSelection:
          type: boolean
          description: '**This is deprecated. Use `constraints` instead.**'
        inputForm:
          $ref: '#/components/schemas/type_commons:InputForm'
          description: Adds an input form for this action after it is clicked.
        constraints:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:ActionConstraint'
          description: A limitation or restriction on the action.
        mount:
          $ref: '#/components/schemas/type_commons:ActionMount'
        guide:
          $ref: '#/components/schemas/type_commons:Guide'
        guardrail:
          $ref: '#/components/schemas/type_commons:Guardrail'
        createdFrom:
          $ref: '#/components/schemas/type_commons:ActionId'
          description: The action that this action was cloned from
        lastPropagatedAt:
          type: string
          format: date-time
          description: The last time this action was propagated to a workbook
        deletedAt:
          type: string
          format: date-time
          description: The time this action was deleted
        invalidConditionalMessaging:
          type: boolean
          description: When enabled, shows dynamic confirmation messages based on record validation status instead of the static description
        validRecordsMessage:
          type: string
          description: Custom message to show when all records are valid (only used when invalidConditionalMessaging is true)
        invalidRecordsMessage:
          type: string
          description: Custom message to show when there are invalid records (only used when invalidConditionalMessaging is true)
        label:
          type: string
          description: The text on the Button itself
      required:
      - label
      title: Action
    type_commons:SpaceId:
      type: string
      description: Space ID
      title: SpaceId
    type_commons:Guardrail:
      type: object
      properties:
        content:
          type: string
          description: Markdown guardrail for this action
      required:
      - content
      title: Guardrail
    type_documents:Document:
      type: object
      properties:
        title:
          type: string
        body:
          type: string
        treatments:
          type: array
          items:
            type: string
          description: Certain treatments will cause your Document to look or behave differently.
        actions:
          type: array
          items:
            $ref: '#/components/schemas/type_commons:Action'
        id:
          $ref: '#/components/schemas/type_commons:DocumentId'
        spaceId:
          $ref: '#/components/schemas/type_commons:SpaceId'
        environmentId:
          $ref: '#/components/schemas/type_commons:EnvironmentId'
        createdAt:
          type: string
          format: date-time
          description: Date the document was created
        updatedAt:
          type: string
          format: date-time
          description: Date the document was last updated
        createdFrom:
          $ref: '#/components/schemas/type_commons:DocumentId'
          description: The document id of the template that was used to create this document
        lastPropagatedAt:
          type: string
          format: date-time
          description: The last time the document template configuration was propagated to this document
      required:
      - title
      - body
      - id
      - createdAt
      - updatedAt
      description: A document (markdown components) belong to a space
      title: Document
    type_commons:DocumentId:
      type: string
      description: Document ID
      title: DocumentId
  securitySchemes:
    default:
      type: http
      scheme: bearer