---
title: "Update a Multi FileFeed"
method: PATCH
path: "/v0/multi-file-feeds/{multi_file_feed_id}"
tags: ["Multi FileFeeds"]
---

# Update a Multi FileFeed

`PATCH /v0/multi-file-feeds/{multi_file_feed_id}`

Updates an existing Multi FileFeed's configuration

## Request body

- object — At least one field must be provided. If a field is not provided, it will not be updated. If a field is provided with a null value, it will be removed.
  - `name` string — New name for the Multi FileFeed
  - `source` union — Configuration for the source connection (SFTP or S3). Set to null to remove the source. S3 sources must be enabled for the organization.
    - SourceSftp
      - `type` 'sftp'
      - `data` object
        - `sftp_account_id` integer, required
        - `path` string, path, required
        - `options` object
          - `schedule` object
            - `frequency` 'hourly' | 'daily'
            - `hour_utc` integer — Hour in UTC for daily frequency
            - `minute_utc` integer — Minute offset within the hour (must be a multiple of 5, 0-55). Defaults to 0 (top of the hour).
    - SourceS3
      - `type` 's3'
      - `data` object
        - `s3_account_id` integer, required
        - `bucket` string, required
        - `prefix` string, nullable — Key prefix within the bucket to scope listing/pulling to. Defaults to empty (whole bucket).
        - `file_filter` string, nullable — Optional regular expression applied to object keys. When set, only matching keys are ingested. Note: changing `file_filter` does not retroactively re-ingest objects that already passed the cursor watermark; only newly listed objects are evaluated against the new pattern. Changing `bucket` or `prefix`, by contrast, resets the cursor and dedupe ledger because they reference a different object namespace.
        - `options` object
          - `schedule` object
            - `frequency` 'hourly' | 'daily'
            - `hour_utc` integer — Hour in UTC for daily frequency
            - `minute_utc` integer — Minute offset within the hour (must be a multiple of 5, 0-55). Defaults to 0 (top of the hour).
  - `destination` union — Configuration for the destination connection (SFTP or S3). Set to null to remove the destination. S3 destinations must be enabled for the organization.
    - DestinationSftp
      - `type` 'sftp'
      - `data` object
        - `sftp_account_id` integer, required
        - `path` string, path, required
    - DestinationS3
      - `type` 's3'
      - `data` object
        - `s3_account_id` integer, required
        - `bucket` string, required
        - `prefix` string, nullable — Key prefix within the bucket. Output files are written to `{prefix}/{file_name}`. Defaults to empty (write to bucket root).
  - `post_validation_transform_key` string — Key of an existing post-validation transform to apply
  - `multi_filefeed_event_webhook_key` string, nullable — Key of an existing event webhook to attach to this Multi FileFeed. Pass `null` to detach the current event webhook.
  - `folder_id` integer — ID of the folder to move this Multi FileFeed into. The folder must belong to the same organization.
  - `custom_metadata` object, nullable — JSON object with custom metadata to associate with the Multi FileFeed
  - `workflow_templates` WorkflowTemplateInput[] — Declarative list of templates for this Multi FileFeed. When provided, the system computes a diff against the current templates: - Templates in the request but not currently associated are **added**. - Templates already associated whose `is_required` flag changed are **updated**. - Templates currently associated but not in the request are **removed**. At least one template must be provided (empty arrays are rejected). Template keys must be unique within the request.
    - union — A template to associate with a Multi FileFeed. At least one of `template_key` or `template_id` must be provided. If both are provided, they must refer to the same template; otherwise the request is rejected with a validation error.
      - object
        - `template_key` string, required — The unique key of the template to associate
        - `template_id` integer — The numeric ID of the template to associate
        - `is_required` boolean, required — Whether this template is required for the Multi FileFeed
      - object
        - `template_key` string — The unique key of the template to associate
        - `template_id` integer, required — The numeric ID of the template to associate
        - `is_required` boolean, required — Whether this template is required for the Multi FileFeed

## Response `200`

Successful response

- MultiFileFeed
  - `id` integer
  - `name` string
  - `folder_id` integer — ID of the folder containing this Multi FileFeed
  - `custom_metadata` object
  - `templates` MultiFileFeedTemplate[]
    - `name` string
    - `description` string
    - `key` string
    - `is_required` boolean — Whether this template is required for the Multi FileFeed
  - `source` union[]
    - union
      - SourceSftp
        - `type` 'sftp'
        - `data` object
          - `sftp_account_id` integer, required
          - `path` string, path, required
          - `options` object
            - `schedule` object
              - …
      - SourceS3
        - `type` 's3'
        - `data` object
          - `s3_account_id` integer, required
          - `bucket` string, required
          - `prefix` string, nullable — Key prefix within the bucket to scope listing/pulling to. Defaults to empty (whole bucket).
          - `file_filter` string, nullable — Optional regular expression applied to object keys. When set, only matching keys are ingested. Note: changing `file_filter` does not retroactively re-ingest objects that already passed the cursor watermark; only newly listed objects are evaluated against the new pattern. Changing `bucket` or `prefix`, by contrast, resets the cursor and dedupe ledger because they reference a different object namespace.
          - `options` object
            - `schedule` object
              - …
  - `destination` union[]
    - union
      - DestinationSftp
        - `type` 'sftp'
        - `data` object
          - `sftp_account_id` integer, required
          - `path` string, path, required
      - DestinationS3
        - `type` 's3'
        - `data` object
          - `s3_account_id` integer, required
          - `bucket` string, required
          - `prefix` string, nullable — Key prefix within the bucket. Output files are written to `{prefix}/{file_name}`. Defaults to empty (write to bucket root).
  - `event_webhooks` EventWebhook[]
    - `webhook_key` string — Unique key identifying the webhook
    - `events` string[] — List of event types the webhook is subscribed to
  - `post_validation_transform_key` string, nullable — Key of the post-validation transform applied to this Multi FileFeed

## Other responses

- `400` — Bad request
- `403` — Forbidden (the required feature is not enabled for this organization)

---

[API](https://skmtc.net/oneschema/apis/templates.md) · [All operations](https://skmtc.net/oneschema/apis/templates/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/oneschema/templates/revisions/40674aa6d4d9/schema)
