> ## Documentation Index
> Fetch the complete documentation index at: https://docs-docflow.textin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Upload File



## OpenAPI

````yaml /docflow-global/en/rest-api/openapi.bundle.yaml post /api/app-api/sip/platform/v2/file/upload
openapi: 3.0.0
info:
  title: DocFlow API
  description: >-
    DocFlow REST API, providing file upload and file processing result retrieval
    capabilities
  version: 2.4.2
servers:
  - url: https://docflow.textin.ai
security:
  - ApiId: []
    SecretCode: []
paths:
  /api/app-api/sip/platform/v2/file/upload:
    post:
      summary: Upload File
      operationId: uploadFile
      parameters:
        - $ref: '#/components/parameters/WorkspaceId'
        - $ref: '#/components/parameters/Category'
        - $ref: '#/components/parameters/BatchNumber'
        - $ref: '#/components/parameters/SplitFlag'
        - $ref: '#/components/parameters/CropFlag'
        - $ref: '#/components/parameters/TargetProcess'
        - $ref: '#/components/parameters/ParserRemoveWatermark'
        - $ref: '#/components/parameters/ParserCropDewarp'
        - $ref: '#/components/parameters/ParserApplyMerge'
        - $ref: '#/components/parameters/ParserFormulaLevel'
        - $ref: '#/components/parameters/ParserTableTextSplitMode'
        - $ref: '#/components/parameters/ParserDpi'
      requestBody:
        $ref: '#/components/requestBodies/FileUploadRequestBody'
      responses:
        '200':
          description: File upload successful
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/CodeMessage'
                  - type: object
                    properties:
                      result:
                        type: object
                        properties:
                          batch_number:
                            type: string
                            description: Batch Number
                            example: 202412190001
                          files:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                  description: File ID
                                  example: 202412190001
                                task_id:
                                  type: string
                                  description: Task ID
                                  example: 1981692246135111700
                                name:
                                  type: string
                                  description: File Name
                                  example: invoice.pdf
                                format:
                                  type: string
                                  description: File Format
                                  example: pdf
                              required:
                                - id
                                - name
                                - format
                        required:
                          - batch_number
                          - files
components:
  parameters:
    WorkspaceId:
      name: workspace_id
      in: query
      description: Workspace ID
      required: true
      schema:
        type: string
        example: 1234567890
    Category:
      name: category
      in: query
      description: File Category
      required: false
      schema:
        type: string
        example: invoice
    BatchNumber:
      name: batch_number
      in: query
      description: >
        Batch Number.            You can upload multiple times with the same
        batch number, and later retrieve processing results for multiple files
        in that batch using the batch number.            If the value is empty,
        the system automatically generates a string up to 20 characters long.
      required: false
      schema:
        type: string
        example: 202412190001
    SplitFlag:
      name: split_flag
      in: query
      description: Whether to perform file splitting
      required: false
      schema:
        type: boolean
        default: false
    CropFlag:
      name: crop_flag
      in: query
      description: Whether to perform multi-image cropping
      required: false
      schema:
        type: boolean
        default: false
    TargetProcess:
      name: target_process
      in: query
      description: >
        Target processing type.            Optional values:            -
        classify: Classification            - extract: Extraction
      required: false
      schema:
        type: string
        enum:
          - classify
          - extract
        example: classify
    ParserRemoveWatermark:
      name: parser_remove_watermark
      in: query
      description: Remove watermark (0 no, 1 yes)
      required: false
      schema:
        type: integer
        default: 0
    ParserCropDewarp:
      name: parser_crop_dewarp
      in: query
      description: Crop and dewarp (0 no, 1 yes)
      required: false
      schema:
        type: integer
        default: 0
    ParserApplyMerge:
      name: parser_apply_merge
      in: query
      description: Merge cross-page paragraphs and tables (0 no, 1 yes)
      required: false
      schema:
        type: integer
        default: 1
    ParserFormulaLevel:
      name: parser_formula_level
      in: query
      description: >-
        Formula recognition level (0 recognizes both display and inline
        formulas, 1 recognizes display formulas only, 2 recognizes no formulas)
      required: false
      schema:
        type: integer
        default: 0
    ParserTableTextSplitMode:
      name: parser_table_text_split_mode
      in: query
      description: Split text blocks crossed by table lines (0 no, 1 yes)
      required: false
      schema:
        type: integer
        default: 0
    ParserDpi:
      name: parser_dpi
      in: query
      description: File resolution (144 default, 216 high precision)
      required: false
      schema:
        type: integer
        default: 144
        enum:
          - 144
          - 216
  requestBodies:
    FileUploadRequestBody:
      description: File upload request body
      required: true
      content:
        multipart/form-data:
          schema:
            type: object
            properties:
              file:
                type: string
                format: binary
        application/json:
          schema:
            type: object
            properties:
              urls:
                description: >
                  File URL list

                  Supports up to 10 file URLs per upload, each file maximum
                  100MB
                type: array
                items:
                  type: string
                  description: File URL
                  example: https://example.com/file.pdf
                  pattern: ^https?://.*$
                maxItems: 10
            required:
              - urls
  schemas:
    CodeMessage:
      type: object
      properties:
        code:
          type: integer
          description: Status code
          example: 200
        msg:
          type: string
          description: Status description
      required:
        - code
        - msg
  securitySchemes:
    ApiId:
      type: apiKey
      in: header
      name: x-ti-app-id
    SecretCode:
      type: apiKey
      in: header
      name: x-ti-secret-code

````