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

# Initialize an outbound multipart upload session

> Creates a new upload session for pushing JSON data into an outbound pipeline. The pipeline must have `direction: "outbound"`.



## OpenAPI

````yaml /api-reference/openapi.json post /outbound/uploads
openapi: 3.0.3
info:
  title: FileFeed API
  version: '2026-05-25'
  description: >-
    Official FileFeed REST API for connections, pipelines, schemas, pipeline
    runs, webhooks, outbound uploads, documents, files, and notifications.
    Date-based API versioning is controlled by the `FileFeed-Version` request
    header (default `2024-09-01`; latest `2026-05-25`); this document describes
    the `2026-05-25` shape.
servers:
  - url: https://api.sftpsync.io
security:
  - ApiKeyAuth: []
tags:
  - name: Connections
  - name: Pipelines
  - name: Schemas
  - name: Pipeline Runs
  - name: Webhooks
  - name: Outbound Uploads
  - name: Documents
  - name: Files
  - name: Notifications
  - name: Clients (deprecated)
paths:
  /outbound/uploads:
    post:
      tags:
        - Outbound Uploads
      summary: Initialize an outbound multipart upload session
      description: >-
        Creates a new upload session for pushing JSON data into an outbound
        pipeline. The pipeline must have `direction: "outbound"`.
      operationId: initOutboundUpload
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InitOutboundUploadParams'
            example:
              connectionName: Acme Corp
              pipelineName: employee-sync
              totalParts: 3
              filename: employees.json
      responses:
        '201':
          description: Upload session created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InitOutboundUploadResponse'
              example:
                uploadId: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                status: initiated
                totalParts: 3
                filename: employees.json
        '400':
          $ref: '#/components/responses/BadRequest'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    InitOutboundUploadParams:
      type: object
      properties:
        connectionName:
          type: string
          description: >-
            The connection's human-readable name. Resolves identically for
            hosted and self-hosted SFTP.
        clientName:
          type: string
          deprecated: true
          description: 'Deprecated: use connectionName. Resolved by the connection''s name.'
        pipelineName:
          type: string
          description: 'Name of the outbound pipeline (must have direction: "outbound").'
        totalParts:
          type: integer
          minimum: 1
          description: Total number of parts to upload.
        filename:
          type: string
          description: Optional final filename. Defaults to upload-{uploadId}.json.
        outputFilename:
          type: string
          description: >-
            Exact name for the delivered file. Extension appended from
            outputFormat if omitted.
        outputFormat:
          type: string
          enum:
            - csv
            - json
            - xml
          description: >-
            Output serialization. Overrides format; inferred from outputFilename
            extension if omitted, else defaults to JSON.
      required:
        - pipelineName
        - totalParts
    InitOutboundUploadResponse:
      type: object
      properties:
        uploadId:
          type: string
        status:
          $ref: '#/components/schemas/OutboundUploadState'
        totalParts:
          type: integer
        filename:
          type: string
      required:
        - uploadId
        - status
        - totalParts
        - filename
    OutboundUploadState:
      type: string
      enum:
        - initiated
        - uploading
        - completed
        - aborted
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
        statusCode:
          type: integer
        error:
          type: string
  responses:
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````