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

# Dropbox namespace

> Resources, examples, configuration and evidence for Dropbox namespace.

Use the `@bijectionhq/connectors/dropbox` entrypoint to declare Dropbox namespace resources.

## Availability

This page describes the pinned source package. Published availability is unestablished for this artifact. [Source build and package availability](https://docs.bijection.com/client/sdk-distribution.md).

## Resources and modes

| Resource | Mode | Description |
| - | - | - |
| Dropbox namespace | `writable` | Conditional file writes |
| Dropbox namespace | `incremental` | Paged metadata and independent content |
| Dropbox namespace | `references` | Metadata only |

Declare a resource in application code, then bind deployment-specific settings and credentials. See [typed resources](https://docs.bijection.com/integrations/resources.md), [connections](https://docs.bijection.com/integrations/connections.md) and [source inspection](https://docs.bijection.com/integrations/cli.md).

## Dropbox namespace

### writable: Conditional file writes

The following example matches configuration `standard`.

```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
import { makeFunctionReference } from "bijection/server";
import { dropbox } from "@bijectionhq/connectors/dropbox";
export const files = dropbox.namespace.writable({
  governingRule: makeFunctionReference<"query", any, [null]>("policies:write"),
});
```

> **Inferred record types**
>
> ```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
> items: {
>   "id": string;
>   "name": string;
>   "kind": "file" | "folder";
>   "path": string | undefined;
>   "display_path": string | undefined;
>   "downloadable": boolean;
>   "content_version": string | undefined;
>   "size": string | undefined;
>   "provider_content_hash": string | undefined;
>   "server_modified": string | undefined;
> }
>
> contents: {
>   "id": string;
>   "file": Id<"_storage">;
>   "size": string;
>   "sha256": string;
>   "content_version": string | undefined;
> }
> ```

The function references identify application policy queries. Implement those policies in your application; the references alone grant no authority.

#### Configuration: standard

Case: `dropbox/namespace/writable/standard`.

Connection and resource configuration are declared by this exact case.

Credential kind: `dropbox`. Keep credential material in the private credential inventory.

| Setting | Type | Required | Owner |
| - | - | - | - |
| `namespaceId` | string | Yes | Resource binding |

> **Complete configuration contract**
>
> ```json theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
> {
>   "setup": [],
>   "resource": {
>     "access": {},
>     "defaults": {},
>     "connector": "dropbox",
>     "output": {
>       "kind": "bundle",
>       "collections": [
>         "contents",
>         "items"
>       ]
>     },
>     "credential_kind": "dropbox",
>     "connection_fields": [],
>     "address": {
>       "kind": "fixed",
>       "url": "https://api.dropboxapi.com/2"
>     }
>   },
>   "connection_setup": {
>     "type": "object",
>     "value": {
>       "namespaceId": {
>         "fieldType": {
>           "type": "string"
>         },
>         "optional": false
>       }
>     }
>   },
>   "execution": null
> }
> ```

Native admission analysis has not been recorded for this artifact. Declared configuration does not establish native guarantees or provider behavior.

**Recorded checks**

| Requirement | Scope | Evidence | Result |
| - | - | - | - |
| page-publication-recovery | \{"kind":"collection","name":"contents"} | Conditional writes require retained native and provider evidence; no live Dropbox account has run this mode. | Execution result unavailable |
| page-publication-recovery | \{"kind":"collection","name":"items"} | Conditional writes require retained native and provider evidence; no live Dropbox account has run this mode. | Execution result unavailable |
| command-response-lost | \{"kind":"command","name":"create"} | Conditional writes require retained native and provider evidence; no live Dropbox account has run this mode. | Execution result unavailable |
| command-response-lost | \{"kind":"command","name":"delete"} | Conditional writes require retained native and provider evidence; no live Dropbox account has run this mode. | Execution result unavailable |
| command-response-lost | \{"kind":"command","name":"replace"} | Conditional writes require retained native and provider evidence; no live Dropbox account has run this mode. | Execution result unavailable |
| identity-account | \{"kind":"connection"} | Conditional writes require retained native and provider evidence; no live Dropbox account has run this mode. | Execution result unavailable |

Hosted qualification: **unestablished for this catalog configuration**. Installed connections report their own identity, authority and current status.

### incremental: Paged metadata and independent content

The following example matches configuration `standard`.

```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
import { dropbox } from "@bijectionhq/connectors/dropbox";
export const files = dropbox.namespace.incremental();
```

> **Inferred record types**
>
> ```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
> items: {
>   "id": string;
>   "name": string;
>   "kind": "file" | "folder";
>   "path": string | undefined;
>   "display_path": string | undefined;
>   "downloadable": boolean;
>   "content_version": string | undefined;
>   "size": string | undefined;
>   "provider_content_hash": string | undefined;
>   "server_modified": string | undefined;
> }
>
> contents: {
>   "id": string;
>   "file": Id<"_storage">;
>   "size": string;
>   "sha256": string;
>   "content_version": string | undefined;
> }
> ```

#### Configuration: standard

Case: `dropbox/namespace/incremental/standard`.

Connection and resource configuration are declared by this exact case.

Credential kind: `dropbox`. Keep credential material in the private credential inventory.

| Setting | Type | Required | Owner |
| - | - | - | - |
| `namespaceId` | string | Yes | Resource binding |

> **Complete configuration contract**
>
> ```json theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
> {
>   "setup": [],
>   "resource": {
>     "access": {},
>     "defaults": {},
>     "connector": "dropbox",
>     "output": {
>       "kind": "bundle",
>       "collections": [
>         "contents",
>         "items"
>       ]
>     },
>     "credential_kind": "dropbox",
>     "connection_fields": [],
>     "address": {
>       "kind": "fixed",
>       "url": "https://api.dropboxapi.com/2"
>     }
>   },
>   "connection_setup": {
>     "type": "object",
>     "value": {
>       "namespaceId": {
>         "fieldType": {
>           "type": "string"
>         },
>         "optional": false
>       }
>     }
>   },
>   "execution": null
> }
> ```

Native admission analysis has not been recorded for this artifact. Declared configuration does not establish native guarantees or provider behavior.

**Recorded checks**

| Requirement | Scope | Evidence | Result |
| - | - | - | - |
| page-publication-recovery | \{"kind":"collection","name":"contents"} | Provider behavior and native admission require exact-source remote receipts; no live provider account has been reached. | Execution result unavailable |
| page-publication-recovery | \{"kind":"collection","name":"items"} | Provider behavior and native admission require exact-source remote receipts; no live provider account has been reached. | Execution result unavailable |
| identity-account | \{"kind":"connection"} | Provider behavior and native admission require exact-source remote receipts; no live provider account has been reached. | Execution result unavailable |

Hosted qualification: **unestablished for this catalog configuration**. Installed connections report their own identity, authority and current status.

### references: Metadata only

The following example matches configuration `standard`.

```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
import { dropbox } from "@bijectionhq/connectors/dropbox";
export const files = dropbox.namespace.references();
```

> **Inferred record types**
>
> ```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
> items: {
>   "id": string;
>   "name": string;
>   "kind": "file" | "folder";
>   "path": string | undefined;
>   "display_path": string | undefined;
>   "downloadable": boolean;
>   "content_version": string | undefined;
>   "size": string | undefined;
>   "provider_content_hash": string | undefined;
>   "server_modified": string | undefined;
> }
> ```

#### Configuration: standard

Case: `dropbox/namespace/references/standard`.

Connection and resource configuration are declared by this exact case.

Credential kind: `dropbox`. Keep credential material in the private credential inventory.

| Setting | Type | Required | Owner |
| - | - | - | - |
| `namespaceId` | string | Yes | Resource binding |

> **Complete configuration contract**
>
> ```json theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
> {
>   "setup": [],
>   "resource": {
>     "access": {},
>     "defaults": {},
>     "connector": "dropbox",
>     "output": {
>       "kind": "bundle",
>       "collections": [
>         "items"
>       ]
>     },
>     "credential_kind": "dropbox",
>     "connection_fields": [],
>     "address": {
>       "kind": "fixed",
>       "url": "https://api.dropboxapi.com/2"
>     }
>   },
>   "connection_setup": {
>     "type": "object",
>     "value": {
>       "namespaceId": {
>         "fieldType": {
>           "type": "string"
>         },
>         "optional": false
>       }
>     }
>   },
>   "execution": null
> }
> ```

Native admission analysis has not been recorded for this artifact. Declared configuration does not establish native guarantees or provider behavior.

**Recorded checks**

| Requirement | Scope | Evidence | Result |
| - | - | - | - |
| page-publication-recovery | \{"kind":"collection","name":"items"} | Reference mode declares no content downloads; hosted behavior remains unestablished. | Execution result unavailable |
| identity-account | \{"kind":"connection"} | Reference mode declares no content downloads; hosted behavior remains unestablished. | Execution result unavailable |

Hosted qualification: **unestablished for this catalog configuration**. Installed connections report their own identity, authority and current status.

## Provider guidance

```ts theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
import { dropbox } from "@bijectionhq/connectors/dropbox";
export const files = dropbox.namespace.incremental({});
```

Bind `namespaceId` to an explicitly selected Dropbox namespace. This mode walks
the whole namespace recursively, so moving a file between folders preserves its
stable identity. It does not offer a folder-filtered source with ambiguous
move-out semantics.

The default connection uses `https://api.dropboxapi.com/2` and a private
`dropbox` OAuth credential with `account_info.read` and `files.metadata.read`.
Bind the existing credential role `content` to
`https://content.dropboxapi.com/2`, using an authorized grant with
`files.content.read`. Both requests send the selected Dropbox-API-Path-Root;
secrets and tokens remain in connection custody. The host serializes
Dropbox-API-Arg as ASCII JSON from the admitted key.

`items` publishes each list\_folder/list\_folder/continue page. It retains the
latest cursor even for an empty terminal page. Only a 409 whose error tag is
`reset` restarts the traversal; a 409 `path` error is a failure, not a reset.
File IDs remain identity across renames; paths are mutable metadata. Dropbox's
path-only DeletedMetadata entries are explicitly ignored by the incomplete
listing. An hourly get\_metadata sweep by retained stable ID withdraws a record
only when Dropbox states path/not\_found. This avoids inventing stable IDs from
paths; it also means deletion detection can lag that sweep. Permission failures
leave unresolved responsibility.

`contents` downloads independently by file ID. The host reads `rev` from the
retained Dropbox-API-Result header as the content version and calculates SHA-256
from the streamed bytes. Dropbox `content_hash` remains a separately named
provider block hash, never an ordinary file SHA-256.
`dropbox.namespace.references()` declares only metadata endpoints and needs no
`content` credential role. The current ceiling is 1 GiB per file, with 256 MiB
as the default. Interrupted and oversized transfers do not publish partial
files.

`dropbox.namespace.writable({ governingRule })` adds `create`, `replace` and
`delete` to `contents`. It requires `files.content.write` on both the default
RPC connection and the `content` role. Creation takes a namespace-relative
`path` and a protected `content` file; the admitted request prepends `/`, uses
`mode: add`, disables autorename and enables strict conflicts. Replacement
addresses the acquired stable file ID with `mode: update` and its host-acquired
`rev`. Deletion uses `parent_rev` and therefore cannot delete a folder. Both
conditions are checked by Dropbox; no matching-state read confirms a lost
response. The native single-attempt command retains uncertainty and schedules
source readback only after confirmation. Uploads are at most 150 MiB or the
configured content ceiling, whichever is smaller. Upload sessions are not yet
implemented.

These modes are application-governed. Provider sharing permissions are not
application ACLs, and portable fixtures do not establish live qualification.

Provider contracts:
[upload](https://docs.dropboxapi.com/dropbox-api/api-reference/user-endpoints/files/upload),
[delete](https://docs.dropboxapi.com/dropbox-api/api-reference/user-endpoints/files/delete-v-2),
and
[strict conflict semantics](https://github.com/dropbox/dropbox-api-spec/blob/main/files.stone).

## Provider references

Provider references and prerequisites are maintained in the connector guidance above. No separate provider-documentation review date is recorded.

## Source and evidence

[Canonical connector source](https://github.com/bijectionhq/component-support/blob/80d6b8b52265070a1008a58e4a99df086f94771a/packages/connectors/src/connectors/dropbox/README.md), [native analysis](https://github.com/bijectionhq/component-support/blob/80d6b8b52265070a1008a58e4a99df086f94771a/packages/connectors/contract-analysis.json) and [check receipts](https://github.com/bijectionhq/component-support/blob/80d6b8b52265070a1008a58e4a99df086f94771a/packages/connectors/evidence.json).

Connector artifact: `4f299f628dc463dd516cd6941e78813d3b2e27f88a9a37a14af7837a20805b62`.

The resource declaration examples above are compiled and compared with exact catalog declarations. Recorded checks apply only to their source, declaration and runtime identities. Configure a connection and inspect its status to establish deployment-specific readiness.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.