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

# Update upload grants

> Replace the complete list of user grants on an upload or folder; an empty list revokes every grant.

`veryfront__update_upload_grants`

Requires project.uploads.admin.

## Access

No external-service connection is required. Use a Veryfront credential with access to the requested resources.

**Call type:** Can change resources.

## Arguments

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `upload_path` | `string` | Yes | Upload UUID for grants on that upload, or an upload path or folder prefix resolved to the folder setting that governs it. Do not URL-encode it. Minimum length: `1`. |
| `grants` | `object[]` | Yes | The complete replacement list. An empty list revokes every grant. |
| `confirm` | `boolean` | Yes | Must be true to confirm replacing the whole grant list; an empty list revokes every grant. |
| `project_reference` | `string` | No | Project UUID, slug or configured domain; optional when the selected context supplies a project. |

## Example request

Send this JSON-RPC request through an initialized MCP client. Replace sample identifiers and values before calling the tool. See [MCP client setup](https://veryfront.com/docs/cloud/getting-started/connect-mcp.md).

```json title="request.json" theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "veryfront__update_upload_grants",
    "arguments": {
      "upload_path": "example",
      "grants": [],
      "confirm": true
    }
  }
}
```

## Result

The published output shape is summarized below. Inspect both the MCP response content and `isError` when handling a call.

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `data` | `object[]` | Yes | Primary result records returned by the tool. |
| `resolved_path` | `string` | Yes | Path of the upload or folder the grants are stored on. |
| `resolved_type` | `string` | Yes | Whether the grants are stored on an upload or a folder. Values: `"upload"`, `"folder"`. |
| `resolved_id` | `string` | Yes | UUID of that upload or folder. |

## Full schemas

```json title="input-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "upload_path": {
      "type": "string",
      "minLength": 1,
      "description": "Upload UUID for grants on that upload, or an upload path or folder prefix resolved to the folder setting that governs it. Do not URL-encode it."
    },
    "grants": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "format": "uuid",
            "description": "UUID of the user the grant is for."
          },
          "permission": {
            "type": "string",
            "enum": [
              "read",
              "write",
              "admin"
            ],
            "description": "Access to give: read (default), write or admin.",
            "default": "read"
          }
        },
        "required": [
          "user_id"
        ],
        "additionalProperties": false,
        "description": "One grant item supplied to the tool."
      },
      "description": "The complete replacement list. An empty list revokes every grant."
    },
    "confirm": {
      "type": "boolean",
      "description": "Must be true to confirm replacing the whole grant list; an empty list revokes every grant."
    },
    "project_reference": {
      "type": "string",
      "description": "Project UUID, slug or configured domain; optional when the selected context supplies a project."
    }
  },
  "required": [
    "upload_path",
    "grants",
    "confirm"
  ],
  "additionalProperties": false,
  "description": "Arguments for the update_upload_grants tool.",
  "$schema": "http://json-schema.org/draft-07/schema#"
}
```

```json title="output-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "UUID of the user the grant is for."
          },
          "permission": {
            "type": "string",
            "enum": [
              "read",
              "write",
              "admin"
            ],
            "description": "Access the grant gives: read, write or admin."
          },
          "created_at": {
            "type": "string",
            "description": "Creation time, RFC 3339."
          }
        },
        "required": [
          "user_id",
          "permission",
          "created_at"
        ],
        "additionalProperties": false
      },
      "description": "Primary result records returned by the tool."
    },
    "resolved_path": {
      "type": "string",
      "description": "Path of the upload or folder the grants are stored on."
    },
    "resolved_type": {
      "type": "string",
      "enum": [
        "upload",
        "folder"
      ],
      "description": "Whether the grants are stored on an upload or a folder."
    },
    "resolved_id": {
      "type": "string",
      "description": "UUID of that upload or folder."
    }
  },
  "required": [
    "data",
    "resolved_path",
    "resolved_type",
    "resolved_id"
  ],
  "additionalProperties": false,
  "description": "Structured result returned by the update_upload_grants tool.",
  "$schema": "http://json-schema.org/draft-07/schema#"
}
```

<details>
  <summary>Try this tool</summary>

  Replace sample arguments with values for your project or connected account. Calls run only when you select Run tool.

  MCP tool call

  Call `veryfront__update_upload_grants` against the Veryfront MCP endpoint.

  Bearer token or API key

  Arguments (JSON)

  Run this tool with these arguments.

  Run tool

  Output JSON

  <pre />
</details>


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