Tomorrow (April 7 at 12:01 AM PDT) I'm launching TextAI API on Product Hunt. Here's the 2-minute story of why I built it and what it does.
The problem: $0.30 kills micropayments
I wanted to build a text processing pipeline — summarize articles, extract keywords, translate content. The usual suspects (OpenAI, AWS Comprehend) either require monthly subscriptions or charge minimum fees that make per-call pricing uneconomical.
The math is brutal: Stripe charges $0.30 + 2.9% per transaction. If your API call costs $0.01, the payment processing fee is 30x the product cost. You're forced to bundle users into monthly plans just to make the economics work.
I wanted a different model: pay exactly for what you call, with no minimum.
The solution: USDC on Solana
Solana transaction fees are ~$0.00025. That makes true micropayments viable at any scale.
TextAI API works like a prepaid SIM card:
- Get an API key (instant, no email required)
- Top up with USDC credits when you need them
- Pay per call — nothing when idle
# Get your key + 100 free credits in one call
curl -X POST https://textai-api.overtek.deno.net/keys/create \
-H "Content-Type: application/json" \
-d '{"label":"test"}'
# → {"apiKey":"sk_...","credits":100}
What it does today
Three endpoints, all REST:
| Endpoint | What it does | Credits |
|---|---|---|
POST /summarize |
Condense text to N sentences | 10 ($0.01) |
POST /keywords |
Extract top keywords/phrases | 5 ($0.005) |
POST /translate |
Translate to 10 languages | 15 ($0.015) |
1 USDC = 1,000 credits. Process 1,000 documents for ~$5-10 depending on operation mix.
The stack
Built on Deno Deploy + Hono (the fastest JS framework I've tried). SQLite for key/credit storage. The AI engine uses rule-based processing by default with Groq (llama-3.1-8b) when configured — keeps costs near zero at small scale.
The whole thing is ~600 lines of TypeScript.
Try it before the launch
New keys get 100 free demo credits — enough to test all 3 endpoints. No credit card, no email, no account creation.
import requests
# Step 1: get your key
res = requests.post("https://textai-api.overtek.deno.net/keys/create",
json={"label": "devto-test"})
key = res.json()["apiKey"]
# Step 2: summarize something
result = requests.post("https://textai-api.overtek.deno.net/summarize",
headers={"X-API-Key": key},
json={"text": "Your long article here...", "sentences": 3})
print(result.json())
Support on Product Hunt 🚀
If this solves a real problem for you, I'd love your support tomorrow:
The launch goes live April 7 at 12:01 AM PDT. Any upvotes, comments, or honest feedback are genuinely appreciated.
What would you build with pay-per-use text AI? Drop a comment below — I read every one.
Top comments (0)