Create Feed
Create a new feed for content distribution.
POST
/v1/feedsOverview
Creates a new data feed with specified category, name, description, tags, and optional image. The authenticated wallet becomes the feed owner.
Authentication: Required
Payment: x402 micropayment required
Request
Body Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Feed name (1-255 chars) |
description | string | No | Feed description (max 2000 chars) |
tags | string[] | No | Array of tags (max 20) |
category_id | string (UUID) | No | Category identifier |
image_url | string | No | Cover image URL |
Request Body
{
"name": "My Tech Blog",
"description": "Latest tech articles and tutorials",
"tags": ["tech", "programming", "tutorial"],
"category_id": "123e4567-e89b-12d3-a456-426614174000"
}Response
{
"id": "feed-uuid",
"owner_id": "owner-uuid",
"owner_wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"category_id": "category-uuid",
"name": "My Tech Blog",
"description": "Latest tech articles and tutorials",
"image_cid": "QmX...",
"is_active": true,
"total_entries": 0,
"total_purchases": 0,
"total_revenue": "0",
"tags": ["tech", "programming", "tutorial"],
"created_at": 1734192000,
"updated_at": 1734192000
}Code Examples
cURL
curl -X POST https://api.grapevine.fyi/v1/feeds \
-H "Content-Type: application/json" \
-H "x-wallet-address: 0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb" \
-H "x-signature: 0x..." \
-H "x-message: Sign this message..." \
-H "x-timestamp: 1234567890" \
-H "x-chain-id: 8453" \
-H "X-PAYMENT: eyJ2ZXJzaW9u..." \
-d '{
"name": "My Tech Blog",
"description": "Latest tech articles",
"tags": ["tech", "programming"]
}'Error Responses
400 Bad Request
{
"error": "invalid_request",
"message": "Name is required",
"details": { "field": "name" }
}Notes
- Feed Limit: Maximum 10 feeds per wallet
- Auto-creation: Wallet is automatically created on first feed
- Private IPFS Storage: Images are stored on Private IPFS, returns
image_cid - Payment: Requires x402 micropayment