Skip to main content
PATCH
/
api
/
partner
/
v1
/
folders
/
{folderId}
curl --request PATCH \
  --url https://www.genviral.io/api/partner/v1/folders/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "parent_folder_id": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb"
  }'
{
  "ok": true,
  "code": 200,
  "message": "Folder updated",
  "data": {
    "id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "name": "Product Shots",
    "media_type": "upload",
    "parent_folder_id": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb",
    "path": "/bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "file_count": 12,
    "subfolder_count": 2,
    "preview_files": [],
    "created_at": "2026-03-01T09:00:00.000Z",
    "updated_at": "2026-03-01T10:00:00.000Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.genviral.io/llms.txt

Use this file to discover all available pages before exploring further.

Reparents a folder. This endpoint only moves folders; it does not rename them.

Path Parameters

folderId
string
required
Folder UUID.

Body Parameters

parent_folder_id
string | null
required
Destination parent folder ID. Send null to move the folder to the root level.
curl --request PATCH \
  --url https://www.genviral.io/api/partner/v1/folders/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "parent_folder_id": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb"
  }'
{
  "ok": true,
  "code": 200,
  "message": "Folder updated",
  "data": {
    "id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "name": "Product Shots",
    "media_type": "upload",
    "parent_folder_id": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb",
    "path": "/bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "file_count": 12,
    "subfolder_count": 2,
    "preview_files": [],
    "created_at": "2026-03-01T09:00:00.000Z",
    "updated_at": "2026-03-01T10:00:00.000Z"
  }
}

Error Responses

  • 400 invalid_json - malformed JSON body
  • 422 invalid_path - folderId is not a valid UUID
  • 422 invalid_payload - missing or invalid parent_folder_id
  • 404 not_found - folder or parent folder not visible in key scope
  • 409 folder_move_conflict - invalid move (self, descendant, or destination name conflict)
  • 401 - authentication failed (missing/invalid/revoked token)
  • 402 subscription_required - active Creator/Professional/Business plan required
  • 403 tier_not_allowed - Scheduler tier cannot use Partner API
  • 500 folder_update_failed - unexpected failure