Dropbox .NET SDK
Show / Hide Table of Contents

Namespace Dropbox.Api.Riviera

Classes

ApiExifGpsMetadata

GPS coordinates and related tags extracted from image EXIF data. Fields are populated on a best-effort basis and may be empty when absent from the source file.

ApiExifMetadata

Image EXIF metadata. Fields are populated on a best-effort basis and may be empty when absent from the source file.

ApiKeyframe

A single extracted scene-change keyframe.

ApiMediaMetadata

Audio/video container and per-stream metadata. Fields are populated on a best-effort basis and may be empty when absent from the source file.

ApiMediaStream

A single audio or video stream within a media file.

ApiOfficeMetadata

MS Office document metadata. Some fields apply only to specific document types (e.g. Slides for PowerPoint, Words and Pages for Word).

ApiPdfMetadata

PDF document metadata.

ApiStructuredTranscript

A transcript, split into segments.

ApiTranscriptSegment

A contiguous span of transcribed speech. The span covered by a segment depends on the requested TimestampLevel.

ContentApiV2Error

Reason a transcript job failed. Returned in the GetTranscriptAsyncCheckResult.Failed variant. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

ContentApiV2Error.IsAFolderError

The target is a folder, not a file.

ContentApiV2Error.LimitExceededError

A resource limit was exceeded while producing the result.

ContentApiV2Error.LinkDownloadDisabledError

FileIdOrUrl.Url referenced a Dropbox shared link whose owner has disabled downloads.

ContentApiV2Error.MediaDurationError

The audio to transcribe is longer than the supported maximum.

ContentApiV2Error.NoAudioError

The file has no audio track, or no audio content could be detected in it.

ContentApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

ContentApiV2Error.Other

The other object

ContentApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

ContentApiV2Error.SharedLinkPasswordProtected

FileIdOrUrl.Url referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so such links cannot be transcribed.

ContentApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input). The string is a human-readable message; retrying the same request will not help.

DownloadTransformOutputArgs

Arguments for `download_transform_output`.

DownloadTransformOutputResult

Describes the bytes in the response body. Returned in the `Dropbox-API-Result` header.

FileIdOrUrl

The file id or url object

FileIdOrUrl.FileId

A Dropbox-issued file ID for a file the authenticated user has access to, e.g. "id:a4ayc_80_OEAAAAAAAAAYa".

FileIdOrUrl.Other

The other object

FileIdOrUrl.Path

An absolute Dropbox path, e.g. "/folder/example.pdf".

FileIdOrUrl.Url

Either a Dropbox shared link (www.dropbox.com) or an internet-accessible URL pointing to a supported file. - Dropbox shared links are resolved internally using the caller's authenticated identity and the link's visibility / download settings. They therefore require an authenticated user context; requests made with app auth alone are rejected. Password-protected links and links with downloads disabled are rejected as well. - Other URLs are fetched by Dropbox's servers, so they must be reachable from the public internet -- not only from the calling application's network -- and must point at a supported file extension.

GetKeyframesArgs

Arguments for the asynchronous `get_keyframes_async` route. Exactly one of `file_id`, `path`, or `url` must be supplied via `file_id_or_url` to identify the video whose scene-change keyframes should be extracted.

GetKeyframesAsyncCheckResult

Result type for EventBus async check - must end in "CheckResult"

GetKeyframesAsyncCheckResult.Complete

The complete object

GetKeyframesAsyncCheckResult.Failed

The failed object

GetKeyframesAsyncCheckResult.InProgress

The in progress object

GetKeyframesAsyncCheckResult.Other

The other object

GetKeyframesResult

The get keyframes result object

GetMarkdownArgs

Arguments for the asynchronous GetMarkdownAsyncAsync(GetMarkdownArgs) GetMarkdownAsyncAsync(GetMarkdownArgs) route. Exactly one of FileIdOrUrl.FileId, FileIdOrUrl.Path, or FileIdOrUrl.Url must be supplied via FileIdOrUrl to identify the document to convert to markdown.

GetMarkdownAsyncCheckResult

Status of a markdown conversion job started by GetMarkdownAsyncAsync(GetMarkdownArgs) GetMarkdownAsyncAsync(GetMarkdownArgs), as returned by GetMarkdownAsyncCheckAsync(PollArg) GetMarkdownAsyncCheckAsync(PollArg).

GetMarkdownAsyncCheckResult.Complete

The job finished successfully.

GetMarkdownAsyncCheckResult.Failed

The job finished unsuccessfully.

GetMarkdownAsyncCheckResult.InProgress

The job has not finished yet. Poll again.

GetMarkdownAsyncCheckResult.Other

The other object

GetMarkdownResult

The get markdown result object

GetMetadataArgs

Arguments for the asynchronous GetMetadataAsyncAsync(GetMetadataArgs) GetMetadataAsyncAsync(GetMetadataArgs) route. Exactly one of FileIdOrUrl.FileId, FileIdOrUrl.Path, or FileIdOrUrl.Url must be supplied via FileIdOrUrl to identify the file whose metadata should be extracted.

GetMetadataAsyncCheckResult

Status of a metadata extraction job started by GetMetadataAsyncAsync(GetMetadataArgs) GetMetadataAsyncAsync(GetMetadataArgs), as returned by GetMetadataAsyncCheckAsync(PollArg) GetMetadataAsyncCheckAsync(PollArg).

GetMetadataAsyncCheckResult.Complete

The job finished successfully.

GetMetadataAsyncCheckResult.Failed

The job finished unsuccessfully.

GetMetadataAsyncCheckResult.InProgress

The job has not finished yet. Poll again.

GetMetadataAsyncCheckResult.Other

The other object

GetMetadataResult

The get metadata result object

GetOcrArgs

Arguments for the asynchronous `get_ocr_async` route. Exactly one of `file_id`, `path`, or `url` must be supplied via `file_id_or_url` to identify the image or PDF whose text should be extracted via OCR (optical character recognition).

GetOcrAsyncCheckResult

Result type for EventBus async check - must end in "CheckResult"

GetOcrAsyncCheckResult.Complete

The complete object

GetOcrAsyncCheckResult.Failed

The failed object

GetOcrAsyncCheckResult.InProgress

The in progress object

GetOcrAsyncCheckResult.Other

The other object

GetOcrResult

The get ocr result object

GetTextArgs

Arguments for the asynchronous `get_text_async` route. Exactly one of `file_id`, `path`, or `url` must be supplied via `file_id_or_url` to identify the document whose plain-text content should be extracted.

GetTextAsyncCheckResult

Result type for EventBus async check - must end in "CheckResult"

GetTextAsyncCheckResult.Complete

The complete object

GetTextAsyncCheckResult.Failed

The failed object

GetTextAsyncCheckResult.InProgress

The in progress object

GetTextAsyncCheckResult.Other

The other object

GetTextResult

The get text result object

GetTranscriptArgs

Arguments for the asynchronous GetTranscriptAsyncAsync(GetTranscriptArgs) GetTranscriptAsyncAsync(GetTranscriptArgs) route. Exactly one of FileIdOrUrl.FileId, FileIdOrUrl.Path, or FileIdOrUrl.Url must be supplied via FileIdOrUrl to identify the audio or video asset to transcribe.

GetTranscriptAsyncCheckResult

Status of a transcript job started by GetTranscriptAsyncAsync(GetTranscriptArgs) GetTranscriptAsyncAsync(GetTranscriptArgs), as returned by GetTranscriptAsyncCheckAsync(PollArg) GetTranscriptAsyncCheckAsync(PollArg).

GetTranscriptAsyncCheckResult.Complete

The job finished successfully.

GetTranscriptAsyncCheckResult.Failed

The job finished unsuccessfully.

GetTranscriptAsyncCheckResult.InProgress

The job has not finished yet. Poll again.

GetTranscriptAsyncCheckResult.Other

The other object

GetTranscriptResult

The get transcript result object

GetTransformAsyncCheckResult

Result type for EventBus async check - must end in "CheckResult"

GetTransformAsyncCheckResult.Complete

The job finished successfully.

GetTransformAsyncCheckResult.Failed

The job finished unsuccessfully.

GetTransformAsyncCheckResult.InProgress

The job has not finished yet. Poll again.

GetTransformAsyncCheckResult.Other

The other object

ImageOptions

Options for `TransformType.image` and `TransformType.image_pdf`. Supplying this message with any other transform type fails with `invalid_options_error`.

KeyframesExtractionApiV2Error

Reason a keyframe extraction job failed. Returned in the `failed` variant of `GetKeyframesAsyncCheckResult`. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

KeyframesExtractionApiV2Error.ConversionFailureError

The source file was readable but could not be processed, for example because it is corrupt.

KeyframesExtractionApiV2Error.IsAFolderError

The target is a folder, not a file.

KeyframesExtractionApiV2Error.LimitExceededError

The request exceeded a service limit -- for example the source video is too large, or the extraction produced more keyframes / more total image data than the response can carry. Lower the resolution, raise `scene_change_threshold`, or set `include_images = false`.

KeyframesExtractionApiV2Error.LinkDownloadDisabledError

FileIdOrUrl.Url referenced a Dropbox shared link whose owner has disabled downloads.

KeyframesExtractionApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

KeyframesExtractionApiV2Error.Other

The other object

KeyframesExtractionApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

KeyframesExtractionApiV2Error.SharedLinkPasswordProtected

FileIdOrUrl.Url referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so such links cannot be processed.

KeyframesExtractionApiV2Error.UnsupportedFormatError

The source file is not in a format this route supports.

KeyframesExtractionApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input). The string is a human-readable message; retrying the same request will not help.

MarkdownConversionApiV2Error

Reason a markdown conversion job failed. Returned in the GetMarkdownAsyncCheckResult.Failed variant. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

MarkdownConversionApiV2Error.ConversionFailureError

The source file was readable but could not be converted, for example because it is corrupt.

MarkdownConversionApiV2Error.IsAFolderError

The target is a folder, not a file.

MarkdownConversionApiV2Error.LimitExceededError

A resource limit was exceeded while producing the result.

MarkdownConversionApiV2Error.LinkDownloadDisabledError

FileIdOrUrl.Url referenced a Dropbox shared link whose owner has disabled downloads.

MarkdownConversionApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

MarkdownConversionApiV2Error.Other

The other object

MarkdownConversionApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

MarkdownConversionApiV2Error.SharedLinkPasswordProtected

FileIdOrUrl.Url referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so such links cannot be converted.

MarkdownConversionApiV2Error.UnsupportedFormatError

The source file is not in a format this route can convert.

MarkdownConversionApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input) -- for example an unsupported file format or a file over the size limit. The string is a human-readable message; retrying the same request will not help.

MediaDurationError

The media duration error object

MetadataExtractionApiV2Error

Reason a metadata extraction job failed. Returned in the GetMetadataAsyncCheckResult.Failed variant. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

MetadataExtractionApiV2Error.ConversionFailureError

The source file was readable but its metadata could not be extracted, for example because the file is corrupt.

MetadataExtractionApiV2Error.IsAFolderError

The target is a folder, not a file.

MetadataExtractionApiV2Error.LimitExceededError

A resource limit was exceeded while producing the result.

MetadataExtractionApiV2Error.LinkDownloadDisabledError

FileIdOrUrl.Url referenced a Dropbox shared link whose owner has disabled downloads.

MetadataExtractionApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

MetadataExtractionApiV2Error.Other

The other object

MetadataExtractionApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

MetadataExtractionApiV2Error.SharedLinkPasswordProtected

FileIdOrUrl.Url referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so metadata cannot be extracted from such links.

MetadataExtractionApiV2Error.UnsupportedFormatError

The source file is not in a format this route can extract metadata from.

MetadataExtractionApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input) -- for example an unsupported file format or a file over the size limit for its metadata kind. The string is a human-readable message; retrying the same request will not help.

MetadataType

Which metadata variant is populated in a GetMetadataResult, derived from the file type.

MetadataType.MetadataTypeExif

MetadataUnion.Exif is populated.

MetadataType.MetadataTypeMedia

MetadataUnion.Media is populated.

MetadataType.MetadataTypeOffice

MetadataUnion.Office is populated.

MetadataType.MetadataTypePdf

MetadataUnion.Pdf is populated.

MetadataType.MetadataTypeUnknown

No metadata kind applies to the file, so no variant of Metadata is populated. Riviera only produces metadata for the formats listed on GetMetadataAsyncAsync(GetMetadataArgs) GetMetadataAsyncAsync(GetMetadataArgs); a request for any other file normally fails with MetadataExtractionApiV2Error.UserError rather than completing with this value. An app that does receive it should treat the file as having no extractable metadata; retrying will not change the outcome.

MetadataType.Other

The other object

MetadataUnion

The extracted metadata. Exactly one variant is populated, corresponding to MetadataType.

MetadataUnion.Exif

EXIF metadata, for image files.

MetadataUnion.Media

Container and per-stream metadata, for audio and video files.

MetadataUnion.Office

Document metadata, for MS Office files.

MetadataUnion.Other

The other object

MetadataUnion.Pdf

Document metadata, for PDFs.

OcrExtractionApiV2Error

Reason an OCR extraction job failed. Returned in the `failed` variant of `GetOcrAsyncCheckResult`. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

OcrExtractionApiV2Error.ConversionFailureError

The source file was readable but could not be processed, for example because it is corrupt.

OcrExtractionApiV2Error.IsAFolderError

The target is a folder, not a file.

OcrExtractionApiV2Error.LimitExceededError

A resource limit was exceeded while producing the result.

OcrExtractionApiV2Error.LinkDownloadDisabledError

FileIdOrUrl.Url referenced a Dropbox shared link whose owner has disabled downloads.

OcrExtractionApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

OcrExtractionApiV2Error.Other

The other object

OcrExtractionApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

OcrExtractionApiV2Error.SharedLinkPasswordProtected

FileIdOrUrl.Url referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so such links cannot be processed.

OcrExtractionApiV2Error.UnsupportedFormatError

The source file is not in a format this route supports.

OcrExtractionApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input). The string is a human-readable message; retrying the same request will not help.

OfficeFileType

The kind of MS Office document that produced an ApiOfficeMetadata result.

OfficeFileType.OfficeFiletypeExcel

The office filetype excel object

OfficeFileType.OfficeFiletypePowerpoint

The office filetype powerpoint object

OfficeFileType.OfficeFiletypeUnknown

The office filetype unknown object

OfficeFileType.OfficeFiletypeWord

The office filetype word object

OfficeFileType.Other

The other object

TextExtractionApiV2Error

Reason a text extraction job failed. Returned in the `failed` variant of `GetTextAsyncCheckResult`. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

TextExtractionApiV2Error.ConversionFailureError

The source file was readable but could not be processed, for example because it is corrupt.

TextExtractionApiV2Error.IsAFolderError

The target is a folder, not a file.

TextExtractionApiV2Error.LimitExceededError

A resource limit was exceeded while producing the result.

TextExtractionApiV2Error.LinkDownloadDisabledError

FileIdOrUrl.Url referenced a Dropbox shared link whose owner has disabled downloads.

TextExtractionApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

TextExtractionApiV2Error.Other

The other object

TextExtractionApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

TextExtractionApiV2Error.SharedLinkPasswordProtected

FileIdOrUrl.Url referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so such links cannot be processed.

TextExtractionApiV2Error.UnsupportedFormatError

The source file is not in a format this route supports.

TextExtractionApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input). The string is a human-readable message; retrying the same request will not help.

ThumbnailFormat

The encoding of the produced image. These match `files/get_thumbnail`'s formats: JPEG is the better choice for photographs, PNG for screenshots, line art, and anything with sharp text edges or transparency.

ThumbnailFormat.Jpeg

Lossy JPEG. The default, and the right choice for photographic sources.

ThumbnailFormat.Other

The other object

ThumbnailFormat.Png

Lossless PNG, with alpha preserved.

ThumbnailFormat.Webp

WebP, which compresses better than either JPEG or PNG at comparable quality but is not readable by every consumer.

ThumbnailMode

How to resize and crop the source to reach the requested `ThumbnailSize`. These match `files/get_thumbnail`'s modes.

ThumbnailMode.Bestfit

Scale down the image to fit within the given size or its transpose.

ThumbnailMode.FitoneBestfit

Scale down the image to completely cover the given size or its transpose.

ThumbnailMode.Original

Don't resize the image at all.

ThumbnailMode.Other

The other object

ThumbnailMode.Strict

Scale down the image to fit within the given size.

ThumbnailOptions

Options for `TransformType.thumbnail`. Supplying this message with any other transform type fails with `invalid_options_error`.

ThumbnailSize

The size of the thumbnail to produce. These are the same named size buckets `files/get_thumbnail` supports, with the same meanings; arbitrary pixel dimensions are not accepted.

ThumbnailSize.Other

The other object

ThumbnailSize.W1024h768

1024 by 768 px.

ThumbnailSize.W128h128

128 by 128 px.

ThumbnailSize.W2048h1536

2048 by 1536 px.

ThumbnailSize.W256h256

256 by 256 px.

ThumbnailSize.W32h32

32 by 32 px.

ThumbnailSize.W480h320

480 by 320 px.

ThumbnailSize.W640h480

640 by 480 px.

ThumbnailSize.W64h64

64 by 64 px.

ThumbnailSize.W960h640

960 by 640 px.

TimestampLevel

Granularity of the time offsets returned for each transcript segment.

TimestampLevel.Other

The other object

TimestampLevel.Sentence

One segment per spoken sentence (recommended). This is the default when TimestampLevel is omitted.

TimestampLevel.Word

One segment per word, useful for fine-grained alignment such as captioning or highlight-as-you-listen experiences.

TransformApiV2Error

Reason a transform job failed. Returned in the `failed` variant of `GetTransformAsyncCheckResult`, and by `download_transform_output`. This is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed job is still a normal successful poll response). Callers should branch on the variant.

TransformApiV2Error.ConversionFailureError

The source file was readable but could not be converted, for example because it is corrupt.

TransformApiV2Error.ExpiredHandleError

The `output_handle` presented to `download_transform_output` has passed its `TransformOutput.expires_ts`. Request the transform again to get a fresh handle. Only `download_transform_output` produces this; a poll never does.

TransformApiV2Error.InvalidOptionsError

`transform_type` was missing, or the supplied options did not match the requested transform type, or an option was out of range. The request is malformed; fix it rather than retrying it.

TransformApiV2Error.IsAFolderError

The target is a folder, not a file.

TransformApiV2Error.LimitExceededError

A resource limit was exceeded while producing the result -- for example the source file is larger than the requested transform accepts.

TransformApiV2Error.LinkDownloadDisabledError

`FileIdOrUrl.url` referenced a Dropbox shared link whose owner has disabled downloads.

TransformApiV2Error.NotFoundError

The referenced file does not exist or is not accessible.

TransformApiV2Error.Other

The other object

TransformApiV2Error.ServerError

An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying with backoff may succeed.

TransformApiV2Error.SharedLinkPasswordProtected

`FileIdOrUrl.url` referenced a password-protected Dropbox shared link. Riviera cannot supply the password, so such links cannot be transformed.

TransformApiV2Error.UnsupportedFormatError

The source file is not in a format the requested `transform_type` can convert.

TransformApiV2Error.UserError

The request could not be processed as supplied (a problem with the caller's input). The string is a human-readable message; retrying the same request will not help.

TransformArgs

Arguments for the asynchronous `get_transform_async` route. Exactly one of `file_id`, `path`, or `url` must be supplied via `file_id_or_url` to identify the source file, and exactly one variant of `transform_type` must be set to say what to produce from it. At most one options message may be set, and it must be the one belonging to the requested `transform_type`. Options that belong to a different transform type are rejected with `invalid_options_error` rather than ignored, so that a request whose parameters were misassembled fails visibly instead of quietly producing the wrong output.

TransformOutput

A completed transform: a handle for retrieving the produced bytes, plus enough metadata to decide whether to retrieve them. The bytes themselves are deliberately not carried here. A completed async result is persisted, so it is bounded by a row-size limit well below the size of a typical converted document -- an inline payload would fail for exactly the large documents this route exists to convert. The transform therefore completes by caching its output and handing back `output_handle`, which `download_transform_output` exchanges for the bytes.

TransformType

Which derived file to produce from the source file. Unlike the other Riviera content routes, which each expose one capability, `get_transform_async` is a single route over many conversions: the caller names the source file and the output it wants, and the service picks the conversion pipeline. Exactly one variant must be set; a request with none set fails with `invalid_options_error`.

TransformType.Html

Convert the source document to HTML. Supported for spreadsheets only, where HTML preserves the sheet layout that a PDF rendering flattens.

TransformType.Image

Re-encode the source as a web-safe raster image (JPEG or PNG). This is the transform to use to normalize formats a browser cannot display directly -- HEIC, camera RAW, PSD, SVG -- and to render a single page of a document as an image. Formats a browser can already display, such as JPEG and PNG, are not accepted; use `thumbnail` to resize or re-encode those. Configured by `TransformArgs.image`.

TransformType.ImagePdf

Render the source as a page image by way of a PDF conversion, rather than by whichever image pipeline the source format would otherwise use. Prefer `image` unless you specifically need the PDF-rendered result; the two differ for formats that have a native image pipeline of their own (ebooks, for example). Configured by `TransformArgs.image`.

TransformType.Other

The other object

TransformType.Pdf

Convert the source document to PDF. Supported for word-processing, presentation, and spreadsheet documents; images are not accepted.

TransformType.Thumbnail

Produce a resized thumbnail of the source at one of the supported sizes. Configured by `TransformArgs.thumbnail`.

TransformType.VideoFrame

Extract a single frame from a video as a still image. Configured by `TransformArgs.video_frame`. This produces one frame at one requested offset. To get the set of scene-change keyframes across a whole video, use `get_keyframes_async`, which returns every detected frame with its timestamp and scene score.

VideoFrameOptions

Options for `TransformType.video_frame`. Supplying this message with any other transform type fails with `invalid_options_error`.

In this article
Back to top Dropbox .NET SDK