# File Management

## Links

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

## Overview

- Product ID: 6948b078b54506f955d789ed
- Vendor: Apoth3osis
- Type: storage
- Unit type: request
- Price: 0 credits
- Categories: Developer Tools, Data Storage & Persistence, File Transfer & Remote Access, System Administration, File & Binary Operations
- Generated at: 2026-04-21T08:37:08.395Z

### Page Description

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.

### Agent Description

Upload and manage files in one tool: upload_standard, upload_large, list with previews, get signed URLs, download, delete, share, update metadata, inspect access history, and extend expiration.

## Details Tab

### Details

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.

### Actions

- `upload_standard` (10 credits): Generate a signed upload URL for a file up to 10MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.
- `upload_large` (20 credits): Generate a signed upload URL for a file over 10MB and up to 100MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.
- `list`: List active uploaded files for the current budget with optional filtering and pagination. Returns newest files first and includes cached preview URLs when available.
- `get`: Get file metadata and a fresh signed download URL for a specific file.
- `download`: Download file content as base64 for files up to 5MB, or return a signed URL for larger files.
- `delete`: Permanently delete a file from storage.
- `share` (5 credits): Create or refresh a password-protected public share link for an existing file.
- `access_history`: View password-protected share access history for a file.
- `update_metadata` (5 credits): Update metadata and tags on a file.
- `extend_expiration` (10 credits): Extend a file's expiration date by 7 days from the current expiration.

### Use Cases

Small file upload, large file upload, signed upload URL generation, temporary file hosting, budget-scoped file storage, file inventory, file preview listing, image preview retrieval, get file metadata, refresh signed URL, download file as base64, delete uploaded file, create password-protected file share, secure file delivery, metadata tagging, file organization, access audit trail, extend file expiration, AI agent file persistence, report delivery, export storage, dataset handoff, document sharing, cross-run file retrieval, chat attachment storage, automation workflow file output

### Workflows Using This Tool

#### Appointment Scheduling and Route Planner

Takes a CSV or spreadsheet file with addresses, asks for a starting drive time, time per stop, and starting address, then parses the addresses, optimizes the driving route, calculates estimated arrival and departure times for each location, and generates a CSV with the full schedule. Returns the optimized route map, Google Maps directions link, and the schedule CSV both locally and via notification. Ideal for field sales, service technicians, delivery planning, or any multi-stop appointment scheduling.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/appointment-scheduling-and-route-planner
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/appointment-scheduling-and-route-planner?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

#### Bank Statement OCR and Account Reconciliation

Automates bank account reconciliation in Zoho Books. Accepts bank statement files (PDF, images, scans) from the user, uploads them to File Management, runs OCR to extract transaction data, then cross-references extracted transactions against unmatched bank feed transactions in Zoho Books. For each unmatched transaction, finds potential matching records (expenses, invoices, payments) and reconciles them. Generates a reconciliation summary and notifies the user when complete.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/bank-statement-ocr-and-account-reconciliation
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/bank-statement-ocr-and-account-reconciliation?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

#### Receipt OCR to Zoho Books Expense Pipeline

Automates the process of collecting receipt images, uploading them to File Management, running OCR to extract expense data, and adding them as categorized expenses in Zoho Books. Receipts paid with a credit card ending in 9018 are mapped to the Chase Example CC payment account, and receipts paid with a credit card ending in 0999 are mapped to the Bank Of America Example CC payment account. Receipts are processed through OCR 10 at a time. A human is notified when all receipts have been uploaded to the bookkeeping software.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/receipt-ocr-to-zoho-books-expense-pipeline
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/receipt-ocr-to-zoho-books-expense-pipeline?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

#### Route Planner From Address Photos

Automates multi-stop route planning from photos of addresses. Collects the user's starting address, time needed at each stop, and departure time. Processes uploaded images through OCR to extract addresses, compiles them into a CSV, optimizes the route order, calculates arrival and departure times for each location, and delivers the final plan with a map image, detailed schedule, and Google Maps link.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/address-image-route-planner
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/address-image-route-planner?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

#### Kroger Grocery Order From List Photo

Upload a photo of your handwritten or printed grocery list, and the agent will extract the items using OCR, search Kroger for each item to find the best-priced match, add them to your Kroger cart, then send you a notification that your order is ready for checkout.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/kroger-grocery-order-from-list-photo
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/kroger-grocery-order-from-list-photo?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

#### Document and File Certification with Post-Quantum Digital Signatures

Generate tamper-proof digital certificates for any uploaded file using post-quantum cryptography. This workflow guides the user through uploading or selecting a file via the File Management tool, then signs it with the Quantum-Safe File Attestation tool using ML-DSA-65 (Dilithium3) post-quantum digital signatures via hardware security module. Returns a verifiable attestation package containing a cryptographic manifest, digital signature, and verification bundle with a downloadable certificate link. Use cases include regulatory compliance document certification, financial audit report signing, legal contract attestation, intellectual property timestamping, medical record integrity verification, insurance claim evidence certification, notarized document equivalents, SOC 2 and ISO 27001 audit evidence, HIPAA-compliant document signing, tax filing certification, and tamper-proof archival of sensitive business documents.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/document-and-file-certification-with-post-quantum-digital-signatures--69c9e9d194c1eacb907d4153
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/document-and-file-certification-with-post-quantum-digital-signatures--69c9e9d194c1eacb907d4153?format=agent-md
- Published: 2026-03-30T03:28:07.020Z

### 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": "6948b078b54506f955d789ed",
    "parameters": {
      "action": "upload_standard",
      "content_length_bytes": 1
    }
  }'
```

### 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

#### Parameters

- Schema type: actions

```json
{
  "actions": {
    "upload_standard": {
      "description": "Generate a signed upload URL for a file up to 10MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.",
      "properties": {
        "content_length_bytes": {
          "type": "integer",
          "description": "Exact file size in bytes. Must match the Content-Length header on PUT. Range: 1-10485760 (10MB).",
          "required": true,
          "minimum": 1,
          "maximum": 10485760
        },
        "filename": {
          "type": "string",
          "description": "Original filename including extension. If omitted, a filename is auto-generated.",
          "required": false
        },
        "content_type": {
          "type": "string",
          "description": "MIME type of the file. Default: application/octet-stream.",
          "required": false
        },
        "expiration_days": {
          "type": "integer",
          "description": "Days until file expires and is automatically deleted (1-7). Default: 7.",
          "required": false,
          "minimum": 1,
          "maximum": 7
        },
        "shared": {
          "type": "boolean",
          "description": "Whether the file should be shareable through a password-protected public URL.",
          "required": false
        },
        "password_max_uses": {
          "type": "integer",
          "description": "Maximum number of uses for the auto-generated share password (1-10). Only relevant when shared is true.",
          "required": false,
          "minimum": 1,
          "maximum": 10
        },
        "password_max_minutes": {
          "type": "integer",
          "description": "Minutes until the auto-generated share password expires (1-10). Only relevant when shared is true.",
          "required": false,
          "minimum": 1,
          "maximum": 10
        },
        "metadata": {
          "type": "object",
          "description": "Custom metadata as key-value pairs to attach to the file.",
          "required": false,
          "properties": {}
        },
        "tags": {
          "type": "array",
          "description": "Tags for categorization.",
          "required": false,
          "items": {
            "type": "string"
          }
        }
      },
      "price_per_unit": 10
    },
    "upload_large": {
      "description": "Generate a signed upload URL for a file over 10MB and up to 100MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.",
      "properties": {
        "content_length_bytes": {
          "type": "integer",
          "description": "Exact file size in bytes. Must match the Content-Length header on PUT. File size must be over 10MB and up to 100MB.",
          "required": true,
          "exclusiveMinimum": 10485760,
          "maximum": 104857600
        },
        "filename": {
          "type": "string",
          "description": "Original filename including extension. If omitted, a filename is auto-generated.",
          "required": false
        },
        "content_type": {
          "type": "string",
          "description": "MIME type of the file. Default: application/octet-stream.",
          "required": false
        },
        "expiration_days": {
          "type": "integer",
          "description": "Days until file expires and is automatically deleted (1-7). Default: 7.",
          "required": false,
          "minimum": 1,
          "maximum": 7
        },
        "shared": {
          "type": "boolean",
          "description": "Whether the file should be shareable through a password-protected public URL.",
          "required": false
        },
        "password_max_uses": {
          "type": "integer",
          "description": "Maximum number of uses for the auto-generated share password (1-10). Only relevant when shared is true.",
          "required": false,
          "minimum": 1,
          "maximum": 10
        },
        "password_max_minutes": {
          "type": "integer",
          "description": "Minutes until the auto-generated share password expires (1-10). Only relevant when shared is true.",
          "required": false,
          "minimum": 1,
          "maximum": 10
        },
        "metadata": {
          "type": "object",
          "description": "Custom metadata as key-value pairs to attach to the file.",
          "required": false,
          "properties": {}
        },
        "tags": {
          "type": "array",
          "description": "Tags for categorization.",
          "required": false,
          "items": {
            "type": "string"
          }
        }
      },
      "price_per_unit": 20
    },
    "list": {
      "description": "List active uploaded files for the current budget with optional filtering and pagination. Returns newest files first and includes cached preview URLs when available.",
      "properties": {
        "tags": {
          "type": "array",
          "description": "Filter to files matching any of these tags.",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "date_from": {
          "type": "string",
          "description": "Only files created on or after this date (ISO 8601).",
          "required": false
        },
        "date_to": {
          "type": "string",
          "description": "Only files created on or before this date (ISO 8601).",
          "required": false
        },
        "limit": {
          "type": "integer",
          "description": "Maximum number of files to return (1-100).",
          "required": false,
          "minimum": 1,
          "maximum": 100
        },
        "offset": {
          "type": "integer",
          "description": "Number of files to skip for pagination.",
          "required": false,
          "minimum": 0
        },
        "url_expiration_minutes": {
          "type": "integer",
          "description": "Requested preview URL validity in minutes when a preview URL must be refreshed (1-10080, default: 10080).",
          "required": false,
          "minimum": 1,
          "maximum": 10080
        }
      },
      "price_per_unit": 0
    },
    "get": {
      "description": "Get file metadata and a fresh signed download URL for a specific file.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        },
        "url_expiration_minutes": {
          "type": "integer",
          "description": "How long the signed URL should remain valid in minutes (1-10080, default: 10080).",
          "required": false,
          "minimum": 1,
          "maximum": 10080
        }
      },
      "price_per_unit": 0
    },
    "download": {
      "description": "Download file content as base64 for files up to 5MB, or return a signed URL for larger files.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        },
        "return_content": {
          "type": "boolean",
          "description": "If true, returns base64 file content for files up to 5MB. Otherwise returns a signed URL.",
          "required": false
        },
        "url_expiration_minutes": {
          "type": "integer",
          "description": "How long the signed URL should remain valid in minutes when returning a URL (1-10080, default: 10080).",
          "required": false,
          "minimum": 1,
          "maximum": 10080
        }
      },
      "price_per_unit": 0
    },
    "delete": {
      "description": "Permanently delete a file from storage.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        }
      },
      "price_per_unit": 0
    },
    "share": {
      "description": "Create or refresh a password-protected public share link for an existing file.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        },
        "password_max_uses": {
          "type": "integer",
          "description": "Maximum number of times the auto-generated password can be used (1-10). Leave empty for unlimited uses.",
          "required": false,
          "minimum": 1,
          "maximum": 10
        },
        "password_max_minutes": {
          "type": "integer",
          "description": "Minutes until the auto-generated password expires (1-10). Leave empty for no expiration.",
          "required": false,
          "minimum": 1,
          "maximum": 10
        }
      },
      "price_per_unit": 5
    },
    "access_history": {
      "description": "View password-protected share access history for a file.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        },
        "limit": {
          "type": "integer",
          "description": "Maximum number of access records to return (1-100).",
          "required": false,
          "minimum": 1,
          "maximum": 100
        }
      },
      "price_per_unit": 0
    },
    "update_metadata": {
      "description": "Update metadata and tags on a file.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        },
        "metadata": {
          "type": "object",
          "description": "Metadata key-value pairs to merge into existing metadata.",
          "required": false,
          "properties": {}
        },
        "tags": {
          "type": "array",
          "description": "Replace all existing tags with this list.",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "add_tags": {
          "type": "array",
          "description": "Add these tags while preserving current tags.",
          "required": false,
          "items": {
            "type": "string"
          }
        },
        "remove_tags": {
          "type": "array",
          "description": "Remove these tags from the current tag set.",
          "required": false,
          "items": {
            "type": "string"
          }
        }
      },
      "price_per_unit": 5
    },
    "extend_expiration": {
      "description": "Extend a file's expiration date by 7 days from the current expiration.",
      "properties": {
        "file_id": {
          "type": "string",
          "description": "File UUID returned from upload.",
          "required": true
        }
      },
      "price_per_unit": 10
    }
  }
}
```

### Usage Instructions

# File Management

Manage the complete file lifecycle from a single tool. This includes uploading new files, listing existing files for the current budget, retrieving metadata and signed URLs, downloading content, deleting files, creating password-protected share links, auditing access history, updating metadata and tags, and extending expiration.

## Actions

### `upload_standard`
Generate a signed upload URL for a file up to 10MB.

Required fields:
- `content_length_bytes`: exact file size in bytes, 1 to 10,485,760

Optional fields:
- `filename`
- `content_type`
- `expiration_days` (1-7)
- `shared`
- `password_max_uses` (1-10)
- `password_max_minutes` (1-10)
- `metadata`
- `tags`

### `upload_large`
Generate a signed upload URL for a file over 10MB and up to 100MB.

Required fields:
- `content_length_bytes`: exact file size in bytes, greater than 10,485,760 and up to 104,857,600

Optional fields:
- `filename`
- `content_type`
- `expiration_days` (1-7)
- `shared`
- `password_max_uses` (1-10)
- `password_max_minutes` (1-10)
- `metadata`
- `tags`

### `list`
List active files for the current budget. Results are newest first and include preview URLs when available.

Optional fields:
- `tags`
- `date_from`
- `date_to`
- `limit`
- `offset`
- `url_expiration_minutes`

### `get`
Get metadata and a fresh signed download URL for a file.

Required fields:
- `file_id`

Optional fields:
- `url_expiration_minutes`

### `download`
Download base64 content for files up to 5MB, or get a signed URL for larger files.

Required fields:
- `file_id`

Optional fields:
- `return_content`
- `url_expiration_minutes`

### `delete`
Delete a file permanently.

Required fields:
- `file_id`

### `share`
Create or refresh a password-protected public share link.

Required fields:
- `file_id`

Optional fields:
- `password_max_uses`
- `password_max_minutes`

### `access_history`
View share access history for a file.

Required fields:
- `file_id`

Optional fields:
- `limit`

### `update_metadata`
Update metadata and tags on a file.

Required fields:
- `file_id`

Optional fields:
- `metadata`
- `tags`
- `add_tags`
- `remove_tags`

### `extend_expiration`
Extend expiration by 7 days.

Required fields:
- `file_id`

## Notes
- Upload actions return a signed `upload_url`; you must then PUT the file bytes to that URL using the returned headers.
- `list` is budget-scoped and includes preview URLs when the file type supports preview.
- Signed URLs can be requested for up to 7 days.
- `download` with `return_content: true` is limited to files 5MB or smaller.
- Share passwords are always auto-generated.
- `extend_expiration` adds 7 days each time it is called.

### 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

This product has no public dependency products.