videosphere
    Preparing search index...

    Interface VimeoDraftFields

    Vimeo-only fields inside the draft document.platforms JSON. Sent on POST /me/videos using snake_case keys where the Vimeo API expects them.

    interface VimeoDraftFields {
        titleOverride?: string;
        descriptionOverride?: string;
        tagsOverride?: string[];
        visibilityOverride?: PlatformUploadVisibility;
        thumbnailR2KeyOverride?: string;
        thumbnailContentTypeOverride?: string;
        thumbnailPreviewUrlOverride?: string;
        categoryUris?: string[];
        license?: VimeoVideoLicense;
        contentRating?: string[];
    }

    Hierarchy (View Summary)

    Index

    Properties

    titleOverride?: string

    Platform-specific title; maps to each API's title field (e.g. SA fullTitle, YouTube snippet.title).

    descriptionOverride?: string

    Platform-specific description/body text.

    tagsOverride?: string[]

    Platform-specific tags; mapped per API (e.g. YouTube snippet.tags, Vimeo tags).

    visibilityOverride?: PlatformUploadVisibility

    Platform-specific privacy (YouTube and Vimeo only).

    thumbnailR2KeyOverride?: string

    Platform-specific draft thumbnail R2 key when not using the shared draft thumbnail.

    • Omitted/undefined — use the shared draft thumbnail.
    • '' — explicit per-platform “no thumbnail” (do not fall back to shared).
    • null — PATCH/editor clear sentinel; merge removes the override so shared is used again.
    thumbnailContentTypeOverride?: string

    MIME type for thumbnailR2KeyOverride. Uses the same undefined / '' / null semantics as thumbnailR2KeyOverride.

    thumbnailPreviewUrlOverride?: string

    Presigned preview URL for thumbnailR2KeyOverride in the draft editor only. Not persisted in draft document JSON.

    categoryUris?: string[]

    Category hints for PUT /videos/{id}/categories batch body.

    Each entry may be a bare slug, full vimeo.com URL, or one of:

    • /categories/{slug} — top-level category
    • /categories/{parent}/subcategories/{slug} — API subcategory path (e.g. Animation)
    • /categories/{parent}/{slug} — short-form subcategory path (e.g. Branded Content)

    Connection URIs such as /categories/{parent}/videos are not valid selections.

    Stored Vimeo upload license selection.

    • undefined — no draft override; UI falls back to VimeoAccountDefaults.license and seeding may copy the connected account default onto the draft.
    • null — explicit “no Creative Commons license” override (Vimeo upload UI label: “Select a license…”, not “All Rights Reserved”).
    • 'by-nc', etc. — explicit Creative Commons license code from GET /creativecommons.

    Upload omits license on create when unset or null; only CC codes are sent. Do not add a separate “All Rights Reserved” picker option — that label is internal/API shorthand only and does not appear in Vimeo’s upload UI.

    contentRating?: string[]

    Stored Vimeo content_rating codes for draft metadata and upload resolution.

    • undefined — not selected in the UI (field omitted on upload).
    • null — explicit “Not selected” clear sent on PATCH; normalized to undefined when stored.
    • ['safe'] — All audiences.
    • [] — Mature tier selected with no detail flags yet (draft/UI placeholder only; omitted on upload until one or more mature-detail codes are chosen).
    • ['language', …] — one or more mature-detail codes from GET /contentratings (every API row except safe and unrated).