English · తెలుగు · हिन्दी

API, MCP

ఈ పేజీలో శీర్షికలు తెలుగులో ఉన్నాయి; సాంకేతిక వివరాలు, కోడ్ ఇంగ్లీష్‌లోనే ఉంటాయి.

Everything on attu.in is one HTTP call, or one MCP tool. Anyone can use them: no account is needed to publish a free page. Base URL: https://attu.in/api/v1. Responses are JSON; errors are {"detail": "..."} with an HTTP status.

కీలు, IP నియమాలు

CredentialWhere fromUsed for
nonePublishing a free page.
edit tokenShown once when you publishGet, update, delete that one page: Authorization: Bearer <edit token>
workspace key attu_ws_…Shown once when you start a planPublishing on a paid plan, and every page of the workspace, plus the workspace endpoints.

పబ్లిష్ చేయండి

# free: one HTML file (100 KB max)
curl -F file=@page.html -F title="My page" https://attu.in/api/v1/artifacts

# paid: a .zip static site, password, custom URL, page analytics
curl -H "Authorization: Bearer attu_ws_..." -F file=@site.zip -F password=s3cret \
     -F slug=launch -F analytics=true https://attu.in/api/v1/artifacts

The response has url (the custom URL when set, else https://attu.in/s/<id>), short_url, raw_url (the page's own origin, no footer), id and edit_token (shown once).

పేజీని చూడటం, మార్చడం, తీసివేయడం

curl -H "Authorization: Bearer <edit token or workspace key>" https://attu.in/api/v1/artifacts/<id>

curl -X PATCH -H "Authorization: Bearer <token>" -H "Content-Type: application/json" \
     -d '{"title": "New title", "password": "s3cret", "slug": "launch", "analytics": true}' \
     https://attu.in/api/v1/artifacts/<id>
# password/slug: null removes it. password, slug and analytics need a paid plan.

curl -X DELETE -H "Authorization: Bearer <token>" https://attu.in/api/v1/artifacts/<id>

పేజీ గణాంకాలు

curl -H "Authorization: Bearer <token>" "https://attu.in/api/v1/artifacts/<id>/stats?days=30"

Paid plans, opt-in per page (PATCH {"analytics": true}). Cookieless: daily views, unique visitors, referrer hosts, countries and device class, counted when the page is opened at its attu.in URL, plus outbound click counts. Kept 13 months. You may also add your own analytics script inside your page; it runs on the page's own sub-domain.

Click counts. While analytics are on, attu adds one script tag, <script src="/_attu/a.js">, to your page's HTML documents (only then; otherwise your files are served exactly as uploaded). It counts clicks on links to other sites and on wa.me/WhatsApp, tel:, mailto:, upi: and Instagram links. It stores only a normalised target: whatsapp, tel, mailto, upi, or https://host/first-path-segment; never phone numbers, UPI IDs, query strings or anything the visitor typed. Free pages show only a total view count.

Links in your page. Your page runs inside the attu.in frame, so give links to other sites target="_blank" (new tab) or target="_top" (whole window). Most sites, WhatsApp included, refuse to open inside a frame.

వర్క్‌స్పేస్‌లు, ప్లాన్‌లు

Paid plans open soon. You can start a workspace now, but its checkout page does not take payments yet, so the plan does not start until paying opens.

# start a plan: personal | team | team-yearly  (returns workspace_key ONCE, and a checkout_url)
curl -X POST -H "Content-Type: application/json" -d '{"plan":"personal"}' https://attu.in/api/v1/workspaces

K="Authorization: Bearer attu_ws_..."
curl -H "$K" https://attu.in/api/v1/workspaces/me                    # plan, period, bandwidth, pages
curl -X POST -H "$K" https://attu.in/api/v1/workspaces/renew         # next period (optional {"plan": ...})
curl -X POST -H "$K" -H "Content-Type: application/json" -d '{"plan":"team"}'      https://attu.in/api/v1/workspaces/change-plan                   # upgrade: pro-rata checkout; downgrade: scheduled
curl -X POST -H "$K" https://attu.in/api/v1/workspaces/change-plan/cancel  # cancel a scheduled downgrade
curl -X POST -H "$K" https://attu.in/api/v1/workspaces/recharge      # +10 GB until the period ends
curl -X PUT -H "$K" -H "Content-Type: application/json" -d '{"username":"yourname"}' \
     https://attu.in/api/v1/workspaces/me/username                   # attu.in/yourname/<slug>
curl -X PUT -H "$K" -H "Content-Type: application/json" \
     -d '{"cidrs":["203.0.113.0/24","2001:db8::/32","198.51.100.7"]}' \
     https://attu.in/api/v1/workspaces/me/allowed-ips                # [] = any IP

Changing plans. Upgrade (Personal → Team → Team yearly): you pay only the difference for the rest of the period, and it takes effect when paid (to yearly: the unused part of the period is credited and a 365-day period starts at payment). Downgrade: no charge; it takes effect when the paid time ends and /renew then buys the lower plan. Over the lower plan's page limit, new publishes are blocked until you are under it; nothing is deleted.

Prices exclude tax. In India 18% GST is added at checkout (₹99 + GST = ₹116.82). Checkout links go to the bitgeek customers site, where paying will open. By continuing you agree to the terms.

సొంత డొమైన్‌లు

curl -X POST -H "$K" -H "Content-Type: application/json" -d '{"domain":"menu.yourshop.in","home":"menu"}'      https://attu.in/api/v1/workspaces/me/domains          # returns the DNS records to add
curl -X POST -H "$K" https://attu.in/api/v1/workspaces/me/domains/menu.yourshop.in/verify
curl -H "$K" https://attu.in/api/v1/workspaces/me/domains
curl -X PATCH -H "$K" -H "Content-Type: application/json" -d '{"home":"<page id or slug>"}'      https://attu.in/api/v1/workspaces/me/domains/menu.yourshop.in
curl -X DELETE -H "$K" https://attu.in/api/v1/workspaces/me/domains/menu.yourshop.in

Team includes 3 domains; any paid plan can add more with the custom domain add-on (+1 domain for the current period: POST /api/v1/workspaces/domains/addon returns a checkout link; MCP buy_domain_addon). Add CNAME menu.yourshop.in → domains.attu.in (for a bare domain: A 88.99.245.164 and AAAA 2a01:4f8:10b:183::2) and the TXT record _attu-verify.menu.yourshop.in with your token, then verify. https://menu.yourshop.in/ shows the home page, /<slug> the workspace's page with that custom URL. HTTPS is set up a few minutes after verification. You are responsible for your domain and its DNS. If the plan lapses or drops below Team, the domain shows a paused page and stays reserved for your workspace for 30 days.

WhatsApp దుకాణాలు

A one-page menu or catalogue works well on the free plan. Add an order button that links to https://wa.me/<your number with country code>?text=<URL-encoded order>, and set the page's <title> and og:title/og:description/og:image tags: WhatsApp shows them as the link preview. Personal gives attu.in/yourshop/menu; Team lets you use menu.yourshop.in. See the sample tiffin-centre menu.

MCP సర్వర్

Streamable HTTP at https://attu.in/mcp. Without a key the tools act as Free (edit tokens go in the tool arguments). With Authorization: Bearer attu_ws_… they use your paid workspace. Same limits and IP rules as the API.

Claude Code

claude mcp add --transport http attu https://attu.in/mcp
# paid workspace:
claude mcp add --transport http attu https://attu.in/mcp --header "Authorization: Bearer attu_ws_..."

Other clients (JSON)

{
  "mcpServers": {
    "attu": {
      "type": "http",
      "url": "https://attu.in/mcp",
      "headers": { "Authorization": "Bearer attu_ws_..." }
    }
  }
}

Clients that only speak stdio: npx mcp-remote https://attu.in/mcp --header "Authorization: Bearer attu_ws_..."

Tools: publish_page, get_page, update_page, delete_page, page_stats, workspace_usage, set_username, set_allowed_ips, start_plan, renew_plan, change_plan, cancel_downgrade, recharge_bandwidth, list_domains, add_domain, verify_domain, set_domain_home, delete_domain.

పరిమితులు

ఉచితంపర్సనల్టీమ్
Max per file100 KB50,000 KB2,000,000 KB
Max per upload (the file or .zip as sent)100 KB500,000 KB2,000,000 KB
Storage (all pages together)each page 30 days2 GB10 GB
Uploadone HTML fileone file or .zipone file or .zip
Pages15 new per day per IP50500
బ్యాండ్‌విడ్త్ఒక్కో పేజీకి నెలకు 500 MB1 GB per period10 GB per month (yearly: 120 GB)
సొంత డొమైన్‌లుnono3
Kept30 dayswhile subscribedwhile subscribed

KB = 1000 bytes. A .zip may have up to 100 files. Prices: pricing.