| exploreA | Search and browse the Xquik X (Twitter) API specification to discover endpoints before making live API calls with the 'xquik' tool. When to useUse 'explore' FIRST to find the right endpoint path, parameters, and response shape before calling 'xquik'. Use when the user asks what capabilities are available or how to accomplish a task on X/Twitter. Use to check whether an endpoint is free or requires a subscription.
When NOT to useBehaviorRead-only, idempotent. No network calls - runs against an in-memory catalog of 100+ endpoints. Always free, no authentication or credits required. Returns the result of your filter function (e.g., empty array if no endpoints match). Returns a validation error if the request function is invalid. Timeout: 60 seconds. Each EndpointInfo contains: method, path, summary, category (account | composition | credits | extraction | media | monitoring | support | twitter | x-accounts | x-write), free (boolean), parameters (array), and responseShape (string).
Input formatProvide a bounded request function. The server exposes spec.endpoints (EndpointInfo[]). Filter, search, or return them. ExamplesFind all free endpoints: async () => spec.endpoints.filter(e => e.free)
Find by category: async () => spec.endpoints.filter(e => e.category === 'composition')
Search by keyword: async () => spec.endpoints.filter(e => e.summary.toLowerCase().includes('tweet'))
Get full details: async () => spec.endpoints.find(e => e.path === '/api/v1/x/tweets/search') |
| xquikA | Send confirmed Xquik API requests across 100+ REST endpoints. When to useUse after calling 'explore' to discover the endpoint path and parameters. Use for live X/Twitter operations such as tweet search, user lookup, giveaway draws, extraction jobs, composition, private reads, persistent monitors, webhooks, and confirmation-gated writes. Confirm private reads, persistent resources, billing flows, and writes before using endpoints that require user approval.
When NOT to useBehaviorProcesses the provided request function with xquik.request(path, options?) and spec.endpoints available. No filesystem or arbitrary network access - only xquik.request() is available. Console calls are silently ignored. Timeout: 60 seconds per invocation, 60 seconds per individual API request. Read operations (GET) return JSON objects with the requested data. Mutating operations (POST/PATCH/DELETE) require prior user confirmation and return { success: true } or { success: true, warning: '...' }. Pagination: responses include has_next_page (boolean) and next_cursor (string). Pass cursor as a query param for the next page. Some operations modify X or Xquik resources. Show the exact payload, target, and cost before calling them.
Error handling402: Subscription required or insufficient credits. Explain the billing issue and ask before any checkout or top-up action. 429: Rate limited. Retry after backoff. 404: Resource not found (user, tweet, or monitor does not exist). 200 with warning field: Probable success - do NOT retry.
CostsFree: compose, styles, drafts, radar, account info, support, credit balance, and webhook management. 1 credit/read ($0.00015): tweet search, timeline, bookmarks, favoriters. 10 credits/write ($0.0015): tweet, like, retweet, follow, DM.
Input formatProvide a bounded request function using xquik.request(path, { method?, body?, query? }). Auth is automatic. ExamplesSearch tweets: async () => xquik.request('/api/v1/x/tweets/search', { query: { q: 'AI agents', limit: '50' } })
Get user: async () => xquik.request('/api/v1/x/users/elonmusk')
After explicit user confirmation, post tweet: async () => xquik.request('/api/v1/x/tweets', { method: 'POST', body: { account: '<confirmed_account>', text: '<confirmed_text>' } }) |