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

# complete_media_upload

> Complete a media upload with Posted MCP.

Validate uploaded media and queue video preparation. Read its status until ready before scheduling it.

## Workflow

```mermaid theme={"system"}
flowchart LR
  step0["Finish storage PUT"] --> step1
  step1["Validate uploaded media"] --> step2
  step2["Poll status if processing"]
```

## Access and behavior

Write or Administrator OAuth consent and a member/administrator team role are required. Tools are listed and callable only when the current grant and role permit them.

Images can become ready immediately. Videos normally return state processing with HTTP 202 and must finish preparation before a post can use them. Invalid bytes or size are rejected.

## Arguments

| Argument | Required | Type or meaning |
| - | - | - |
| `mediaId` | Yes | Private media UUID returned by reserve\_media\_upload. |

<Accordion title="Complete input schema">
  ```json theme={"system"}
  {
    "type": "object",
    "properties": {
      "mediaId": {
        "type": "string",
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
      }
    },
    "required": ["mediaId"],
    "additionalProperties": false
  }
  ```
</Accordion>

## Example call

The client initializes the MCP connection before sending this JSON-RPC call. Example records are fictional.

```json theme={"system"}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "complete_media_upload",
    "arguments": {
      "mediaId": "44444444-4444-4444-8444-444444444444"
    }
  }
}
```

## Example result

Posted returns this object in `structuredContent` and a JSON text content block. A tool failure sets `isError`; never treat an error as a completed mutation.

```json theme={"system"}
{
  "state": "ready",
  "media": {
    "id": "44444444-4444-4444-8444-444444444444",
    "fileName": "studio.jpg",
    "contentType": "image/jpeg",
    "sizeBytes": 245760,
    "width": 1600,
    "height": 900,
    "alt": "A bright studio desk beside a window",
    "durationSeconds": null
  }
}
```

## Related reference

[HTTP operation](/api-reference/post_api_media_by_mediaId_complete) · [Connect an MCP client](/mcp-connections) · [Request conventions](/api-reference/overview)


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