# YouTube Channel Management

## Links

- Product page URL: https://www.agentpmt.com/marketplace/youtube-api
- Product markdown URL: https://www.agentpmt.com/marketplace/youtube-api?format=agent-md
- Product JSON URL: https://www.agentpmt.com/marketplace/youtube-api?format=agent-json

## Overview

- Product ID: 697bf0c272d3d1646732c184
- Vendor: Apoth3osis
- Type: function
- Unit type: request
- Price: 0 credits
- Categories: Automation, Video & Motion Graphics, Social Media Management, Marketing Automation, Content Management & Publishing, Video & Streaming
- Generated at: 2026-04-15T18:20:37.503Z

### Page Description

Automate your YouTube content management with full programmatic access to video uploads, metadata editing, and playlist organization. This tool enables AI agents to upload videos directly to YouTube using resumable uploads from AgentPMT storage, update video titles, descriptions, tags, and privacy settings, and schedule videos for future publication. Manage your channel's playlists by creating new playlists, adding or removing videos, reordering items, and keeping your content organized. Ideal for content creators who want to automate their publishing workflows, marketing teams managing multiple video campaigns, and developers building content management systems that integrate with YouTube. All operations use the official YouTube Data API v3 with your connected Google account.

### Agent Description

Upload videos to YouTube, full CRUD for metadata, private, playlists, and playlist items

## Details Tab

### Details

Automate your YouTube content management with full programmatic access to video uploads, metadata editing, and playlist organization. This tool enables AI agents to upload videos directly to YouTube using resumable uploads from AgentPMT storage, update video titles, descriptions, tags, and privacy settings, and schedule videos for future publication. Manage your channel's playlists by creating new playlists, adding or removing videos, reordering items, and keeping your content organized. Ideal for content creators who want to automate their publishing workflows, marketing teams managing multiple video campaigns, and developers building content management systems that integrate with YouTube. All operations use the official YouTube Data API v3 with your connected Google account.

### Actions

- `upload_video`: Upload a video to YouTube using resumable upload. Optionally add it to a playlist in the same call. Provide either source_file_id (preferred) or source_file_url.
- `get_video`: Retrieve details for a specific YouTube video including snippet, status, and content details.
- `update_video`: Update metadata on an existing video. Fetches current values first and merges only provided fields. At least one updatable field must be provided.
- `delete_video`: Permanently delete a video from YouTube.
- `create_playlist`: Create a new YouTube playlist.
- `list_playlists`: List playlists owned by the authenticated user with pagination.
- `get_playlist`: Retrieve details for a specific YouTube playlist.
- `update_playlist`: Update an existing playlist's metadata. Fetches current values first and merges only provided fields. At least one updatable field must be provided.
- `delete_playlist`: Permanently delete a playlist from YouTube.
- `add_video_to_playlist`: Add a video to a playlist at an optional position.
- `list_playlist_items`: List all items in a playlist with pagination.
- `remove_playlist_item`: Remove a specific playlist item by its playlist item ID.
- `remove_video_from_playlist`: Remove a video from a playlist by video ID. Searches through all playlist items and removes matches.

### Use Cases

Upload videos to YouTube from AgentPMT storage, Create and manage YouTube playlists, Add or remove videos from playlists, Update video titles and descriptions and tags, Schedule video publishing for future dates, Automate content publishing workflows, Organize channel content into playlists, Retrieve video and playlist metadata, Build automated video publishing pipelines, Manage video privacy settings

### Workflows Using This Tool

No public workflows currently reference this product.

### Related Content

No related content is currently linked to this product.

## Advanced Tab

### DynamicMCP

- Setup page URL: https://www.agentpmt.com/dynamic-mcp
- Claude setup guide: https://www.agentpmt.com/dynamic-mcp?platform=claude#videos
- ChatGPT setup guide: https://www.agentpmt.com/dynamic-mcp?platform=chatgpt#videos
- Cursor setup guide: https://www.agentpmt.com/dynamic-mcp?platform=cursor#videos
- Windsurf setup guide: https://www.agentpmt.com/dynamic-mcp?platform=windsurf#videos

STDIO connector for Claude Code, Codex, Cursor, Zed, and other LLMs that require STDIO or custom connections. This lightweight connector routes requests to `https://api.agentpmt.com/mcp`. All tool execution happens in the cloud and the server cannot edit any files on your computer.

```bash
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

### REST API

The live page renders cURL, Python, JavaScript, and Node.js examples. Logged-in users see those examples prefilled with their own API and budget credentials.

- Purchase endpoint: https://api.agentpmt.com/products/purchase
- Authorization format: `Bearer <base64(apiKey:budgetKey)>`

```bash
curl -X POST "https://api.agentpmt.com/products/purchase" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eW91ci1hcGkta2V5LWhlcmU6eW91ci1idWRnZXQta2V5LWhlcmU=" \
  -d '{
    "product_id": "697bf0c272d3d1646732c184",
    "parameters": {
      "action": "upload_video",
      "title": "example_title",
      "notify_subscribers": false,
      "chunk_size_bytes": 8388608
    }
  }'
```

### Autonomous Agents

Do not use the abbreviated instructions in this product markdown for wallet-based invocation. Retrieve the full External Agent API markdown document instead.

- External Agent API page URL: https://www.agentpmt.com/external-agent-api
- External Agent API markdown URL: https://www.agentpmt.com/external-agent-api?format=agent-md

### Schema

#### Credentials

These runtime credentials should be provided under `parameters._credentials` when required.

- Google OAuth (`google_oauth`, oauth_token, required)
  Help: Connect your Google account.
  Connection ID: 69616abea90ed54743f01957

#### Parameters

- Schema type: actions

```json
{
  "actions": {
    "upload_video": {
      "description": "Upload a video to YouTube using resumable upload. Optionally add it to a playlist in the same call. Provide either source_file_id (preferred) or source_file_url.",
      "properties": {
        "source_file_id": {
          "type": "string",
          "description": "AgentPMT storage file_id containing the video to upload (recommended)",
          "required": false
        },
        "source_file_url": {
          "type": "string",
          "description": "Public URL to fetch the video bytes (fallback if not using source_file_id)",
          "required": false
        },
        "source_filename": {
          "type": "string",
          "description": "Optional filename hint for source_file_url (used to infer content-type)",
          "required": false
        },
        "source_file_size_bytes": {
          "type": "integer",
          "description": "Required if source_file_url does not provide Content-Length",
          "required": false,
          "minimum": 1
        },
        "source_content_type": {
          "type": "string",
          "description": "Optional MIME type override for upload (e.g., video/mp4)",
          "required": false
        },
        "title": {
          "type": "string",
          "description": "Video title",
          "required": true
        },
        "description": {
          "type": "string",
          "description": "Video description",
          "required": false
        },
        "tags": {
          "type": "array",
          "description": "Tags for the video",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "category_id": {
          "type": "string",
          "description": "YouTube video category ID",
          "required": false
        },
        "privacy_status": {
          "type": "string",
          "description": "Privacy status for the video (default: unlisted)",
          "required": false,
          "enum": [
            "public",
            "unlisted",
            "private"
          ]
        },
        "publish_at": {
          "type": "string",
          "description": "Scheduled publish datetime (RFC3339 / ISO 8601). Use with privacy_status 'private'.",
          "required": false
        },
        "made_for_kids": {
          "type": "boolean",
          "description": "If set, updates selfDeclaredMadeForKids flag on the video",
          "required": false
        },
        "notify_subscribers": {
          "type": "boolean",
          "description": "If true, notify subscribers when uploading (default: false)",
          "required": false,
          "default": false
        },
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID to auto-add the video to after upload",
          "required": false
        },
        "position": {
          "type": "integer",
          "description": "Position in the playlist (0-based). Omit to append at end.",
          "required": false,
          "minimum": 0
        },
        "chunk_size_bytes": {
          "type": "integer",
          "description": "Resumable upload chunk size in bytes. Must be a multiple of 262144 (256 KiB). Default: 8 MiB.",
          "required": false,
          "default": 8388608,
          "minimum": 262144,
          "maximum": 67108864
        }
      }
    },
    "get_video": {
      "description": "Retrieve details for a specific YouTube video including snippet, status, and content details.",
      "properties": {
        "video_id": {
          "type": "string",
          "description": "YouTube video ID",
          "required": true
        }
      }
    },
    "update_video": {
      "description": "Update metadata on an existing video. Fetches current values first and merges only provided fields. At least one updatable field must be provided.",
      "properties": {
        "video_id": {
          "type": "string",
          "description": "YouTube video ID",
          "required": true
        },
        "title": {
          "type": "string",
          "description": "New video title",
          "required": false
        },
        "description": {
          "type": "string",
          "description": "New video description",
          "required": false
        },
        "tags": {
          "type": "array",
          "description": "New tags for the video",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "category_id": {
          "type": "string",
          "description": "YouTube video category ID",
          "required": false
        },
        "privacy_status": {
          "type": "string",
          "description": "Privacy status for the video",
          "required": false,
          "enum": [
            "public",
            "unlisted",
            "private"
          ]
        },
        "publish_at": {
          "type": "string",
          "description": "Scheduled publish datetime (RFC3339 / ISO 8601)",
          "required": false
        },
        "made_for_kids": {
          "type": "boolean",
          "description": "If set, updates selfDeclaredMadeForKids flag",
          "required": false
        }
      }
    },
    "delete_video": {
      "description": "Permanently delete a video from YouTube.",
      "properties": {
        "video_id": {
          "type": "string",
          "description": "YouTube video ID to delete",
          "required": true
        }
      }
    },
    "create_playlist": {
      "description": "Create a new YouTube playlist.",
      "properties": {
        "title": {
          "type": "string",
          "description": "Playlist title",
          "required": true
        },
        "description": {
          "type": "string",
          "description": "Playlist description",
          "required": false
        },
        "tags": {
          "type": "array",
          "description": "Tags for the playlist",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "privacy_status": {
          "type": "string",
          "description": "Privacy status for the playlist (default: unlisted)",
          "required": false,
          "enum": [
            "public",
            "unlisted",
            "private"
          ]
        }
      }
    },
    "list_playlists": {
      "description": "List playlists owned by the authenticated user with pagination.",
      "properties": {
        "max_results": {
          "type": "integer",
          "description": "Max results per page (1-50, default: 25)",
          "required": false,
          "default": 25,
          "minimum": 1,
          "maximum": 50
        },
        "page_token": {
          "type": "string",
          "description": "Pagination token from a previous response's nextPageToken",
          "required": false
        }
      }
    },
    "get_playlist": {
      "description": "Retrieve details for a specific YouTube playlist.",
      "properties": {
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID",
          "required": true
        }
      }
    },
    "update_playlist": {
      "description": "Update an existing playlist's metadata. Fetches current values first and merges only provided fields. At least one updatable field must be provided.",
      "properties": {
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID",
          "required": true
        },
        "title": {
          "type": "string",
          "description": "New playlist title",
          "required": false
        },
        "description": {
          "type": "string",
          "description": "New playlist description",
          "required": false
        },
        "tags": {
          "type": "array",
          "description": "New tags for the playlist",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "privacy_status": {
          "type": "string",
          "description": "Privacy status for the playlist",
          "required": false,
          "enum": [
            "public",
            "unlisted",
            "private"
          ]
        }
      }
    },
    "delete_playlist": {
      "description": "Permanently delete a playlist from YouTube.",
      "properties": {
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID to delete",
          "required": true
        }
      }
    },
    "add_video_to_playlist": {
      "description": "Add a video to a playlist at an optional position.",
      "properties": {
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID",
          "required": true
        },
        "video_id": {
          "type": "string",
          "description": "YouTube video ID to add",
          "required": true
        },
        "position": {
          "type": "integer",
          "description": "Position in the playlist (0-based). Omit to append at end.",
          "required": false,
          "minimum": 0
        }
      }
    },
    "list_playlist_items": {
      "description": "List all items in a playlist with pagination.",
      "properties": {
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID",
          "required": true
        },
        "max_results": {
          "type": "integer",
          "description": "Max results per page (1-50, default: 25)",
          "required": false,
          "default": 25,
          "minimum": 1,
          "maximum": 50
        },
        "page_token": {
          "type": "string",
          "description": "Pagination token from a previous response's nextPageToken",
          "required": false
        }
      }
    },
    "remove_playlist_item": {
      "description": "Remove a specific playlist item by its playlist item ID.",
      "properties": {
        "playlist_item_id": {
          "type": "string",
          "description": "YouTube playlistItem ID to remove",
          "required": true
        }
      }
    },
    "remove_video_from_playlist": {
      "description": "Remove a video from a playlist by video ID. Searches through all playlist items and removes matches.",
      "properties": {
        "playlist_id": {
          "type": "string",
          "description": "YouTube playlist ID to remove the video from",
          "required": true
        },
        "video_id": {
          "type": "string",
          "description": "YouTube video ID to remove",
          "required": true
        },
        "remove_all": {
          "type": "boolean",
          "description": "If true, remove all occurrences of the video. If false, remove only the first match. Default: true.",
          "required": false,
          "default": true
        }
      }
    }
  },
  "properties": {
    "action": {
      "type": "string",
      "description": "Action to perform",
      "required": true,
      "enum": [
        "get_instructions",
        "upload_video",
        "get_video",
        "update_video",
        "delete_video",
        "create_playlist",
        "list_playlists",
        "get_playlist",
        "update_playlist",
        "delete_playlist",
        "add_video_to_playlist",
        "list_playlist_items",
        "remove_playlist_item",
        "remove_video_from_playlist"
      ]
    },
    "category_id": {
      "type": "string",
      "description": "Video categoryId (optional)",
      "required": false
    },
    "chunk_size_bytes": {
      "type": "integer",
      "description": "Resumable upload chunk size (bytes). Must be a multiple of 256 KiB; default 8 MiB.",
      "required": false,
      "default": 8388608,
      "minimum": 262144,
      "maximum": 67108864
    },
    "description": {
      "type": "string",
      "description": "Description (video or playlist, depending on action)",
      "required": false
    },
    "made_for_kids": {
      "type": "boolean",
      "description": "If set, updates status.selfDeclaredMadeForKids (videos only)",
      "required": false
    },
    "max_results": {
      "type": "integer",
      "description": "Max results per page (1-50)",
      "required": false,
      "default": 25,
      "minimum": 1,
      "maximum": 50
    },
    "notify_subscribers": {
      "type": "boolean",
      "description": "If true, notify subscribers when uploading a video (default false)",
      "required": false
    },
    "page_token": {
      "type": "string",
      "description": "Pagination token",
      "required": false
    },
    "playlist_id": {
      "type": "string",
      "description": "YouTube playlist ID",
      "required": false
    },
    "playlist_item_id": {
      "type": "string",
      "description": "YouTube playlistItem ID",
      "required": false
    },
    "position": {
      "type": "integer",
      "description": "Playlist item position (0-based)",
      "required": false,
      "minimum": 0
    },
    "privacy_status": {
      "type": "string",
      "description": "Privacy status for video/playlist. If omitted, upload_video/create_playlist default to unlisted.",
      "required": false,
      "enum": [
        "public",
        "unlisted",
        "private"
      ]
    },
    "publish_at": {
      "type": "string",
      "description": "Scheduled publish datetime (RFC3339 / ISO 8601)",
      "required": false
    },
    "remove_all": {
      "type": "boolean",
      "description": "For remove_video_from_playlist: remove all matching occurrences (default true)",
      "required": false,
      "default": true
    },
    "source_content_type": {
      "type": "string",
      "description": "Optional MIME type override for upload (e.g., video/mp4)",
      "required": false
    },
    "source_file_id": {
      "type": "string",
      "description": "AgentPMT storage file_id containing the video to upload (recommended)",
      "required": false
    },
    "source_file_size_bytes": {
      "type": "integer",
      "description": "Required if source_file_url does not provide Content-Length",
      "required": false,
      "minimum": 1
    },
    "source_file_url": {
      "type": "string",
      "description": "Public URL to fetch the video bytes (fallback if not using source_file_id)",
      "required": false
    },
    "source_filename": {
      "type": "string",
      "description": "Optional filename hint for source_file_url (used to infer content-type)",
      "required": false
    },
    "tags": {
      "type": "array",
      "description": "Tags for video/playlist (optional)",
      "required": false,
      "items": {
        "type": "string"
      }
    },
    "title": {
      "type": "string",
      "description": "Title (video or playlist, depending on action)",
      "required": false
    },
    "video_id": {
      "type": "string",
      "description": "YouTube video ID",
      "required": false
    }
  }
}
```

### Usage Instructions

# YouTube API

## Overview
Upload videos to YouTube, manage playlists, and organize playlist items using the YouTube Data API v3. Supports resumable video uploads from stored files or public URLs, full CRUD on videos and playlists, and playlist item management.

## Actions

### upload_video
Upload a video to YouTube using resumable upload. Optionally add it to a playlist in the same call.

**Required fields:** `source_file_id` or `source_file_url`, `title`
**Optional fields:** `description`, `tags` (array of strings), `category_id`, `privacy_status` (default: "unlisted"), `publish_at` (ISO 8601), `made_for_kids` (boolean), `notify_subscribers` (default: false), `playlist_id` (auto-adds to playlist after upload), `position` (0-based position in playlist), `source_filename`, `source_file_size_bytes`, `source_content_type`, `chunk_size_bytes` (default: 8388608, must be multiple of 262144, range: 262144-67108864)

```json
{
  "action": "upload_video",
  "source_file_id": "abc123def456",
  "title": "Product Demo Q1 2026",
  "description": "Walkthrough of new features released in Q1.",
  "tags": ["demo", "product", "walkthrough"],
  "privacy_status": "unlisted",
  "notify_subscribers": false
}
```

**Upload from URL example:**
```json
{
  "action": "upload_video",
  "source_file_url": "https://example.com/videos/intro.mp4",
  "source_file_size_bytes": 52428800,
  "source_content_type": "video/mp4",
  "title": "Company Introduction",
  "privacy_status": "public",
  "playlist_id": "PLxxxxxxxxxxxxxxxx",
  "position": 0
}
```

### get_video
Retrieve details for a specific YouTube video including snippet, status, and content details.

**Required fields:** `video_id`

```json
{
  "action": "get_video",
  "video_id": "dQw4w9WgXcQ"
}
```

### update_video
Update metadata on an existing video. Fetches current values first, then merges your changes (only provided fields are overwritten).

**Required fields:** `video_id`, plus at least one of: `title`, `description`, `tags`, `category_id`, `privacy_status`, `publish_at`, `made_for_kids`

```json
{
  "action": "update_video",
  "video_id": "dQw4w9WgXcQ",
  "title": "Updated Title",
  "description": "New description for the video.",
  "tags": ["updated", "tags"],
  "privacy_status": "public"
}
```

### delete_video
Permanently delete a video from YouTube.

**Required fields:** `video_id`

```json
{
  "action": "delete_video",
  "video_id": "dQw4w9WgXcQ"
}
```

### create_playlist
Create a new YouTube playlist.

**Required fields:** `title`
**Optional fields:** `description`, `tags` (array of strings), `privacy_status` (default: "unlisted")

```json
{
  "action": "create_playlist",
  "title": "Tutorial Series",
  "description": "Step-by-step tutorials for getting started.",
  "tags": ["tutorials", "beginner"],
  "privacy_status": "public"
}
```

### list_playlists
List playlists owned by the authenticated user.

**Optional fields:** `max_results` (1-50, default: 25), `page_token`

```json
{
  "action": "list_playlists",
  "max_results": 10
}
```

### get_playlist
Retrieve details for a specific playlist.

**Required fields:** `playlist_id`

```json
{
  "action": "get_playlist",
  "playlist_id": "PLxxxxxxxxxxxxxxxx"
}
```

### update_playlist
Update an existing playlist's metadata. Fetches current values first, then merges your changes.

**Required fields:** `playlist_id`, plus at least one of: `title`, `description`, `tags`, `privacy_status`

```json
{
  "action": "update_playlist",
  "playlist_id": "PLxxxxxxxxxxxxxxxx",
  "title": "Updated Playlist Title",
  "privacy_status": "unlisted"
}
```

### delete_playlist
Permanently delete a playlist from YouTube.

**Required fields:** `playlist_id`

```json
{
  "action": "delete_playlist",
  "playlist_id": "PLxxxxxxxxxxxxxxxx"
}
```

### add_video_to_playlist
Add a video to a playlist at an optional position.

**Required fields:** `playlist_id`, `video_id`
**Optional fields:** `position` (0-based index; omit to append at end)

```json
{
  "action": "add_video_to_playlist",
  "playlist_id": "PLxxxxxxxxxxxxxxxx",
  "video_id": "dQw4w9WgXcQ",
  "position": 0
}
```

### list_playlist_items
List all items in a playlist with pagination.

**Required fields:** `playlist_id`
**Optional fields:** `max_results` (1-50, default: 25), `page_token`

```json
{
  "action": "list_playlist_items",
  "playlist_id": "PLxxxxxxxxxxxxxxxx",
  "max_results": 50
}
```

### remove_playlist_item
Remove a specific playlist item by its playlist item ID.

**Required fields:** `playlist_item_id`

```json
{
  "action": "remove_playlist_item",
  "playlist_item_id": "UExxxxxxxxxxxxxxxYYY"
}
```

### remove_video_from_playlist
Remove a video from a playlist by video ID. Searches through all playlist items and removes matches.

**Required fields:** `playlist_id`, `video_id`
**Optional fields:** `remove_all` (default: true; if false, removes only the first occurrence)

```json
{
  "action": "remove_video_from_playlist",
  "playlist_id": "PLxxxxxxxxxxxxxxxx",
  "video_id": "dQw4w9WgXcQ",
  "remove_all": true
}
```

## Common Workflows

### Upload a Video and Organize It
1. Use `upload_video` with `source_file_id`, `title`, `description`, and `playlist_id` to upload and auto-add to a playlist in one call.
2. Use `get_video` with the returned `video_id` to confirm the upload status and metadata.
3. Use `update_video` to adjust the title, description, or privacy after processing completes.

### Build and Manage a Playlist
1. Use `create_playlist` with a title, description, and privacy status.
2. Use `add_video_to_playlist` repeatedly with the new `playlist_id` and each `video_id`, using `position` to control order.
3. Use `list_playlist_items` to verify the playlist contents and order.

### Reorganize Playlist Content
1. Use `list_playlist_items` to get all current items and their `playlist_item_id` values.
2. Use `remove_playlist_item` to remove items you want to reposition.
3. Use `add_video_to_playlist` with the desired `position` to re-insert them in the correct order.

## Important Notes
- **Default privacy:** Both `upload_video` and `create_playlist` default to "unlisted" if `privacy_status` is omitted.
- **Subscriber notifications:** `notify_subscribers` defaults to false for uploads. Set to true only when you want channel subscribers notified.
- **File source preference:** Use `source_file_id` (platform file storage) over `source_file_url` when possible for reliable size detection and content type handling.
- **URL uploads:** When using `source_file_url`, provide `source_file_size_bytes` if the server does not return a Content-Length header, otherwise the upload will fail.
- **Chunk size:** The `chunk_size_bytes` must be a multiple of 262144 (256 KiB). Default is 8 MiB. Range: 256 KiB to 64 MiB.
- **Update behavior:** `update_video` and `update_playlist` fetch the current resource first and merge only the fields you provide, preserving all other existing values.
- **remove_video_from_playlist:** Paginates through all playlist items to find matches. With `remove_all: true` (default), removes every occurrence of the video. Set `remove_all: false` to remove only the first match.
- **Pagination:** Use `page_token` from the response's `nextPageToken` field to fetch subsequent pages for `list_playlists`, `list_playlist_items`.
- **Scheduled publishing:** Use `publish_at` (ISO 8601 datetime) with `privacy_status: "private"` to schedule a video for future publication.
- **Made for kids:** Setting `made_for_kids` updates the `selfDeclaredMadeForKids` flag on videos, which affects available features (comments, notifications, etc.).
- **Resumable uploads:** Uploads use YouTube's resumable upload protocol with automatic retry and resume on failure (up to 5 retries per chunk).

### About The Developer

- Vendor name: Apoth3osis
- Website: apoth3osis.io

We build tools that enable AI agents to excel in the mathematical realm.

Our small team develops experimental and unique solutions in the AI arena, with a strong focus on modular computing for agentic applications and custom model deployment. We have handled projects for a variety of applications across many sectors, from algorithmic trading and financial analysis, to molecular simulations and predictions, to habitat and biodiversity monitoring and wildlife conservation.

### Frequently Asked Questions

No linked FAQs are currently available.

### Dependencies

These products are automatically added when this product is enabled on the page UI.

#### File Storage - 10MB or less

Legacy compatibility wrapper for standard-size file uploads up to 10MB. New integrations should use the File Management product with action `upload_standard`, which now owns upload and lifecycle management in a single tool. This legacy product remains available so existing callers using `/tools/upload-file-standard` do not break, and it returns the same signed upload URL flow with optional password-protected sharing, expiration controls, tags, and metadata.

- Page URL: https://www.agentpmt.com/marketplace/file-storage-10mb-or-less
- Markdown URL: https://www.agentpmt.com/marketplace/file-storage-10mb-or-less?format=agent-md

#### File Storage - Over 10MB

Legacy compatibility wrapper for large file uploads over 10MB and up to 100MB. New integrations should use the File Management product with action `upload_large`, which now owns upload and lifecycle management in a single tool. This legacy product remains available so existing callers using `/tools/upload-file-large` continue to work while the platform migrates to the consolidated file-management surface.

- Page URL: https://www.agentpmt.com/marketplace/file-storage-over-10mb
- Markdown URL: https://www.agentpmt.com/marketplace/file-storage-over-10mb?format=agent-md

#### File Management

Upload, list, retrieve, share, download, delete, and manage files stored in AgentPMT cloud storage. This product now owns the full file lifecycle, including signed upload URLs for files up to 10MB and for files over 10MB up to 100MB, budget-scoped file listing with preview URLs, fresh signed download URLs, direct base64 download for smaller files, password-protected sharing, metadata and tag updates, access-history inspection, and expiration extension. All file operations are scoped to the current budget for isolation and are designed to let one budget create persistent files that can be revisited across later agent runs.

- Page URL: https://www.agentpmt.com/marketplace/file-management
- Markdown URL: https://www.agentpmt.com/marketplace/file-management?format=agent-md