# IPFS Content Gateway

## Links

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

## Overview

- Product ID: 68c368f066ed2f66afff5c99
- Vendor: Apoth3osis
- Type: connector
- Unit type: request
- Price: 2000 credits
- Categories: Security & Cryptography, Blockchain & Web3, Decentralized & Immutable Storage, Compliance & Audit
- Generated at: 2026-04-15T18:27:00.889Z

### Page Description

IPFS Content Gateway provides access to the InterPlanetary File System, a decentralized peer-to-peer network for storing and sharing content using content-addressed identifiers. The retrieval function fetches data from IPFS by CID (Content Identifier) with automatic failover across seven public gateways including ipfs.io, Cloudflare IPFS, and Pinata, ensuring high availability even when individual gateways are slow or unavailable. Content retrieval automatically detects whether the response is text or binary data and returns appropriate previews with full metadata including content type, size, and response headers. The upload function accepts base64-encoded files up to 10MB and pins them to IPFS through pinning services that ensure content remains available on the network. Users can provide their own API credentials for Pinata, Web3.Storage, or NFT.Storage, or use shared infrastructure for convenience. Each upload returns the permanent CID along with multiple gateway URLs for immediate access. The list function provides a complete history of uploads including filenames, sizes, upload dates, and ready-to-use gateway links, with aggregate statistics on total storage used.

### Agent Description

Fetch content from IPFS by CID with automatic failover across 7 gateways. Upload files up to 10MB with pinning. List upload history.

## Details Tab

### Details

IPFS Content Gateway provides access to the InterPlanetary File System, a decentralized peer-to-peer network for storing and sharing content using content-addressed identifiers. The retrieval function fetches data from IPFS by CID (Content Identifier) with automatic failover across seven public gateways including ipfs.io, Cloudflare IPFS, and Pinata, ensuring high availability even when individual gateways are slow or unavailable. Content retrieval automatically detects whether the response is text or binary data and returns appropriate previews with full metadata including content type, size, and response headers. The upload function accepts base64-encoded files up to 10MB and pins them to IPFS through pinning services that ensure content remains available on the network. Users can provide their own API credentials for Pinata, Web3.Storage, or NFT.Storage, or use shared infrastructure for convenience. Each upload returns the permanent CID along with multiple gateway URLs for immediate access. The list function provides a complete history of uploads including filenames, sizes, upload dates, and ready-to-use gateway links, with aggregate statistics on total storage used.

### Actions

- `retrieve` (20 credits): Fetch content from IPFS by its Content Identifier (CID). Supports both CIDv0 (Qm...) and CIDv1 (bafy...) formats. Multiple gateways are tried automatically for reliability.
- `upload` (20 credits): Upload a file to IPFS. The file is pinned so it remains available on the network. Maximum file size is 10MB. Files must be base64-encoded before uploading.
- `list` (20 credits): List all files previously uploaded through this tool, sorted by most recent first. Returns upload history with CIDs, filenames, sizes, dates, and gateway URLs.

### Use Cases

IPFS content retrieval, decentralized storage access, CID content lookup, IPFS gateway access, content-addressed file retrieval, distributed file download, IPFS file upload, decentralized file hosting, permanent content storage, immutable file storage, NFT metadata hosting, NFT asset storage, Web3 content storage, blockchain data storage, decentralized application storage, dApp file hosting, Pinata file upload, Web3.Storage integration, NFT.Storage upload, IPFS pinning service, content pinning, permanent file hosting, censorship-resistant storage, distributed content delivery, peer-to-peer file sharing, IPFS CID generation, content hash storage, verifiable content storage, AI agent decentralized storage, LLM Web3 integration, automation IPFS upload, workflow decentralized storage, multi-gateway IPFS access, reliable IPFS retrieval, IPFS upload tracking, decentralized asset management, Web3 file management, blockchain file storage, immutable document storage, distributed backup storage

### 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": "68c368f066ed2f66afff5c99",
    "parameters": {
      "action": "retrieve",
      "cid": "example_cid"
    }
  }'
```

### 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": {
    "retrieve": {
      "description": "Fetch content from IPFS by its Content Identifier (CID). Supports both CIDv0 (Qm...) and CIDv1 (bafy...) formats. Multiple gateways are tried automatically for reliability.",
      "properties": {
        "cid": {
          "type": "string",
          "description": "IPFS Content Identifier. Supports CIDv0 (Qm...) and CIDv1 (bafy...) formats. Example: 'QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG'",
          "required": true
        }
      }
    },
    "upload": {
      "description": "Upload a file to IPFS. The file is pinned so it remains available on the network. Maximum file size is 10MB. Files must be base64-encoded before uploading.",
      "properties": {
        "content": {
          "type": "string",
          "description": "Base64-encoded file content. Maximum file size: 10MB. Encode your file content as base64 before sending.",
          "required": true
        },
        "filename": {
          "type": "string",
          "description": "Original filename with extension. Example: 'document.pdf' or 'image.png'",
          "required": true
        },
        "pinning_api_key": {
          "type": "string",
          "description": "Optional API key for your own pinning service (Pinata, Web3.Storage, or NFT.Storage). If not provided, shared service credentials will be used.",
          "required": false
        },
        "pinning_service": {
          "type": "string",
          "description": "Pinning service to use with pinning_api_key. Required if pinning_api_key is provided.",
          "required": false,
          "enum": [
            "pinata",
            "web3storage",
            "nftstorage"
          ]
        }
      }
    },
    "list": {
      "description": "List all files previously uploaded through this tool, sorted by most recent first. Returns upload history with CIDs, filenames, sizes, dates, and gateway URLs."
    }
  },
  "properties": {
    "action": {
      "type": "string",
      "description": "Use 'get_instructions' to retrieve documentation. Action to perform: 'retrieve' to get content by CID, 'upload' to upload content to IPFS, or 'list' to see all your uploads",
      "required": false,
      "default": "retrieve",
      "enum": [
        "get_instructions",
        "retrieve",
        "upload",
        "list"
      ]
    },
    "cid": {
      "type": "string",
      "description": "IPFS Content Identifier (required for 'retrieve' action). Supports CIDv0 (Qm...) and CIDv1 (bafy...) formats. Example: 'QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG'",
      "required": false
    },
    "content": {
      "type": "string",
      "description": "Base64-encoded file content (required for 'upload' action). Maximum file size: 10MB. Encode your file content as base64 before sending.",
      "required": false
    },
    "filename": {
      "type": "string",
      "description": "Original filename with extension (required for 'upload' action). Example: 'document.pdf' or 'image.png'",
      "required": false
    },
    "pinning_api_key": {
      "type": "string",
      "description": "Optional API key for your own pinning service (Pinata, Web3.Storage, or NFT.Storage). If not provided, shared service credentials will be used. Use this for unlimited uploads with your own account.",
      "required": false
    },
    "pinning_service": {
      "type": "string",
      "description": "Pinning service to use with pinning_api_key. Required if pinning_api_key is provided.",
      "required": false,
      "enum": [
        "pinata",
        "web3storage",
        "nftstorage"
      ]
    }
  }
}
```

### Usage Instructions

# IPFS Content Gateway

Store and retrieve files on the InterPlanetary File System (IPFS) -- a decentralized, content-addressed storage network. Upload files up to 10MB, retrieve content by CID, and list your upload history.

## Actions

### retrieve

Fetch content from IPFS by its Content Identifier (CID). Supports both CIDv0 (`Qm...`) and CIDv1 (`bafy...`) formats. Multiple gateways are tried automatically for reliability.

**Required fields:**
- `action` — `"retrieve"`
- `cid` — The IPFS Content Identifier to retrieve

**Example:**
```json
{
  "action": "retrieve",
  "cid": "QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG"
}
```

**Response includes:** content (text preview up to 10,000 chars or binary indicator), content_type, content_length, gateway_url, and ipfs_url.

---

### upload

Upload a file to IPFS. The file is pinned so it remains available on the network. Maximum file size is 10MB.

**Required fields:**
- `action` — `"upload"`
- `content` — Base64-encoded file content
- `filename` — Original filename with extension (e.g., `"report.pdf"`)

**Optional fields:**
- `pinning_api_key` — Your own pinning service API key for unlimited uploads
- `pinning_service` — Which service your API key is for. Required when `pinning_api_key` is provided. One of: `"pinata"`, `"web3storage"`, `"nftstorage"`

**Example (using shared service):**
```json
{
  "action": "upload",
  "content": "SGVsbG8gV29ybGQh",
  "filename": "hello.txt"
}
```

**Example (using your own Pinata key):**
```json
{
  "action": "upload",
  "content": "SGVsbG8gV29ybGQh",
  "filename": "hello.txt",
  "pinning_api_key": "your-pinata-jwt-token",
  "pinning_service": "pinata"
}
```

**Response includes:** cid, filename, file_size_bytes, file_size_mb, ipfs_url, and multiple gateway_urls for accessing the content.

---

### list

List all files you have previously uploaded through this tool, sorted by most recent first.

**Required fields:**
- `action` — `"list"`

**Example:**
```json
{
  "action": "list"
}
```

**Response includes:** array of uploads (each with cid, filename, file_size, upload_date, ipfs_url, gateway_url), plus totals for upload count and combined size.

---

## Common Workflows

### Store a document permanently
1. Base64-encode your file content
2. Use `upload` with the encoded content and filename
3. Save the returned CID -- this is the permanent address of your content

### Retrieve previously stored content
1. Use `retrieve` with the CID you received from an upload or found elsewhere
2. Text content is returned directly; binary content is identified by type

### Review your upload history
1. Use `list` to see all files you have uploaded
2. Each entry includes the CID and gateway URL for easy access

## Important Notes
- **File size limit:** 10MB maximum per upload
- **Content encoding:** Files must be base64-encoded before uploading
- **CID formats:** Both CIDv0 (`Qm...`) and CIDv1 (`bafy...`) are supported for retrieval
- **Persistence:** Uploaded content is pinned to IPFS, meaning it will remain available as long as the pinning service maintains it
- **Gateway fallback:** Retrieval automatically tries multiple gateways if the first one fails
- **Own credentials:** For heavy usage, provide your own API key from Pinata, Web3.Storage, or NFT.Storage to avoid shared service limits

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