omni-x402
Original:🇺🇸 English
Translated
AI Agent native API provider — no API keys, no signups, no subscriptions. Just pay with USDC per request via x402 to instantly access Twitter, Instagram, and more.
9installs
Sourcejintanba/omniapiskills
Added on
NPX Install
npx skill4agent add jintanba/omniapiskills omni-x402Tags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →omni-x402 — AI Agent Native API Provider
omni-x402 is an API provider built for the agentic era. No API keys, no signups, no monthly subscriptions. Just pay with USDC per request via the x402 protocol and instantly access Twitter, Instagram, and more.
Traditional API providers: Sign up → Generate API key → Subscribe to a plan → Manage rate limits → Rotate keys
omni-x402: Have a wallet → Call the endpoint → Pay per request. Done.
AI Agents can autonomously discover available endpoints, pay the exact cost per call, and get results — all without human intervention or pre-provisioned credentials.
Available Endpoints
| Path | Method | Price | Description |
|---|---|---|---|
| GET | $0.001 | Get Twitter user profile by username |
| GET | $0.001 | Get tweets from a Twitter user by ID |
| GET | $0.001 | Get multiple Twitter users by IDs (comma-separated) |
| GET | $0.001 | Get users that a Twitter user is following |
| GET | $0.001 | Get followers of a Twitter user |
| POST | $0.001 | Get Instagram posts by username |
| POST | $0.001 | Get Instagram profile by username |
Server URL:
https://omniapi-production-7de2.up.railway.appPrerequisites & Setup
1. awal CLI Authentication
The awal CLI () handles wallet operations and x402 payments. You must authenticate before making paid API calls.
npx awal@latestCheck status:
bash
npx awal@latest statusIf not authenticated, use the email OTP flow:
bash
# Step 1: Send OTP to your email
npx awal@latest auth login user@example.com
# Output: flowId: abc123...
# Step 2: Verify with the 6-digit code from email
npx awal@latest auth verify abc123 123456
# Confirm authentication
npx awal@latest statusSee the skill for details.
authenticate-wallet2. Fund the Wallet
Check your USDC balance:
bash
npx awal@latest balanceIf insufficient, fund via Coinbase Onramp:
bash
npx awal@latest showThis opens the wallet companion UI where you can fund with Apple Pay, debit card, bank transfer, or Coinbase account. Alternatively, send USDC on Base directly to your wallet address:
bash
npx awal@latest addressSee the skill for details.
fundSummary
| Requirement | Check | Skill |
|---|---|---|
| Wallet authenticated | | |
| USDC balance | | |
Usage
All requests are made via , which handles USDC payment automatically.
npx awal@latest x402 payTwitter — Get User Profile
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/user?username=elonmusk"Twitter — Get User Tweets
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/user-tweets?user=44196397&count=20"The parameter is the Twitter user ID (numeric). Use the endpoint first to get the ID from a username.
user/userTwitter — Get Multiple Users
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/get-users-v2?users=44196397,50393960"Accepts comma-separated user IDs.
Twitter — Get Followings
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/followings?user=44196397&count=20"Twitter — Get Followers
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/followers?user=44196397&count=20"Instagram — Get Posts
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/instagram/posts" -X POST -d '{"username": "instagram"}'Instagram — Get Profile
bash
npx awal@latest x402 pay "https://omniapi-production-7de2.up.railway.app/instagram/profile" -X POST -d '{"username": "instagram"}'Note: Instagram endpoints use POST with a JSON body. Use to send the request body.
-X POST -d '{...}'Response Examples
Twitter User Profile (/user
)
/userjson
{
"result": {
"id": "44196397",
"name": "Elon Musk",
"screen_name": "elonmusk",
"description": "...",
"followers_count": 200000000,
"friends_count": 800,
"statuses_count": 50000,
"profile_image_url_https": "https://pbs.twimg.com/..."
}
}Twitter User Tweets (/user-tweets
)
/user-tweetsjson
{
"result": {
"timeline": {
"instructions": [
{
"entries": [
{
"content": {
"tweet_results": {
"result": {
"legacy": {
"full_text": "...",
"created_at": "...",
"favorite_count": 100,
"retweet_count": 50
}
}
}
}
}
]
}
]
}
}
}Instagram Profile (/instagram/profile
)
/instagram/profilejson
{
"result": {
"username": "instagram",
"full_name": "Instagram",
"biography": "...",
"follower_count": 500000000,
"following_count": 500,
"media_count": 7000,
"profile_pic_url": "https://..."
}
}Instagram Posts (/instagram/posts
)
/instagram/postsjson
{
"result": {
"items": [
{
"caption": { "text": "..." },
"like_count": 1000000,
"comment_count": 50000,
"image_versions": { "items": [{ "url": "https://..." }] },
"taken_at": 1700000000
}
]
}
}Service Catalog
Retrieve the full list of available endpoints and their prices:
bash
curl https://omniapi-production-7de2.up.railway.app/catalogReturns:
json
[
{ "path": "/user", "method": "GET", "price": "$0.001", "description": "Get Twitter user profile by username" },
{ "path": "/user-tweets", "method": "GET", "price": "$0.001", "description": "Get tweets from a Twitter user by ID" },
{ "path": "/get-users-v2", "method": "GET", "price": "$0.001", "description": "Get multiple Twitter users by IDs (comma-separated)" },
{ "path": "/followings", "method": "GET", "price": "$0.001", "description": "Get users that a Twitter user is following" },
{ "path": "/followers", "method": "GET", "price": "$0.001", "description": "Get followers of a Twitter user" },
{ "path": "/instagram/posts", "method": "POST", "price": "$0.001", "description": "Get Instagram posts by username" },
{ "path": "/instagram/profile", "method": "POST", "price": "$0.001", "description": "Get Instagram profile by username" }
]Health Check
bash
curl https://omniapi-production-7de2.up.railway.app/healthReturns:
{"status": "ok"}Troubleshooting
| Error | Cause | Fix |
|---|---|---|
| HTTP 402 | Payment required | Use |
| HTTP 502 | Upstream API error | The backend service may be temporarily unavailable. Retry after a few seconds |
| Wallet not authenticated | Run |
| Not enough USDC | Run |
| Empty response | Invalid parameters | Check query parameters — e.g. |
| Instagram 400 | Missing request body | Instagram endpoints require POST with JSON body: |