Data, part 1 of 3 (27 tools)
Reads of Rewalto's data. The ones marked as spending credits charge only for data delivered.
browse_page
Open a page in a real browser. Opens one public page in a headless browser, for pages built by JavaScript that fetch_page reads empty, then runs up to 20 read-only steps in order: click, type, press (a key), scroll, wait, waitFor (a selector), select (an option) and goto (another public page). Answers the page as clean Markdown with its links, status, evidence (URL, time, SHA-256 of the rendered HTML) and what each step did. Bounds: 30 s (timeoutMs up to 45 s), 10 pages, 400 requests, 25 MiB; a partial answer says so (`complete: false`, `stoppedBy`). Honours robots.txt. Never logs in, never posts a form, never presses checkout, payment, sign-in or add-to-cart controls (refused with a named reason in the step). Walled retailers (Blinkit, Zepto, Instamart, BigBasket and others) are refused: use the Library reads for them. Stores nothing. At most 30 calls an hour for your organisation. Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission tools:run
- Inputs
- url (string, required): The page URL.
- steps (list of object, optional): Steps in order, each an object with `type` and its fields: {type:"click",selector}, {type:"type",selector,text}, {type:"press",key} (Enter, Tab, Escape, arrows, PageUp/PageDown, Home, End, Space), {type:"scroll",times?}, {type:"wait",ms}, {type:"waitFor",selector,timeoutMs?}, {type:"select",selector,value}, {type:"goto",url}. A selector is CSS, or text=Exact words.
- waitFor (string, optional): Before the steps: wait until this selector is on the page.
- onlyMainContent (boolean, optional): Default true: drop navigation, headers and footers.
- loadImages (boolean, optional): Default false: skip images, media and fonts.
- timeoutMs (integer, optional): The whole call’s budget (default 30000).
count_series
Count a price series. Before get_series: the days, gap days, points with readings and readings a series read of this scope would deliver. Free: no prices, nothing charged. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- retailer (string, optional): A retailer key, from list_retailers.
- pincode (string, optional): A six-digit pin code.
- location (string, optional): A location id (list_location_cities, list_location_stores); never with pincode.
- confirmPins (string, optional): The pin count get_location_filter showed: consent to a multi-pin read.
- brand (string, optional): A brand name.
- productId (string, optional): A Rewalto product id.
- retailerSku (string, optional): The retailer's own product id (with retailer).
- from (string, optional): First day, YYYY-MM-DD.
- to (string, optional): Last day, YYYY-MM-DD.
- groupBy (string, optional): none, retailer, pincode, brand or product (default none).
discover_listings
Preview matching listings. The preview before a paid fetch: up to 25 matching listings with their newest kept price, MRP and stock, exact match counts by retailer and brand, and what fetching every match would cost. Each organisation has free previews per IST day (`allowance`); past them a preview is charged at the listings rate for the rows shown, like search_listings, and `meta.credits` says what it cost. Nothing found costs nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- q (string, required): The words: product name, brand or retailer product id.
- retailer (string, optional): A retailer key, from list_retailers.
- brand (string, optional): Exact brand text.
- pincode (string, optional): A six-digit pin code.
- location (string, optional): A location id; never with pincode.
- confirmPins (string, optional): The pin count get_location_filter showed.
- limit (string, optional): At most this many rows (up to 25).
fetch_page
Read a web page. Reads one public web page (http or https) and answers its title, language, main content as plain text and Markdown, its links and meta tags, which structured data it carries, its HTTP status, a block class (ok, blocked, challenge, empty) and evidence (URL, time, SHA-256). Honours robots.txt; never logs in or passes a paywall. Cache-first: an answer read in the last `maxAgeSeconds` (default 24 hours) comes from the cache; `cacheOnly` never fetches. Stores nothing. Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission tools:run
- Inputs
- url (string, required): The page URL.
- maxAgeSeconds (integer, optional): Serve a cached answer at most this old; 0 always fetches.
- cacheOnly (boolean, optional): Answer only from the cache; never fetch.
- onlyMainContent (boolean, optional): Default true; false keeps navigation, headers and footers.
get_amazon_products
Amazon India products for one search, with best-seller badges. Rewalto's amazon.in products for one search, in page order (organic and sponsored): ASIN, title, price in rupees, star rating and number of ratings, the Best Seller and Amazon's Choice badges, and the bought-in-past-month count. Charged per product delivered at the history rate. Every reading is kept as Rewalto history; the same request read in the last 24 hours answers from it (meta.reused). A new reading takes a minute or two: the first call answers data.status "pending" with meta.retryAfterSeconds and charges nothing; call again with the same arguments to collect it. Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- q (string, required): The search, e.g. atta.
- depth (string, optional): Products to read: 50 (default) or 100.
get_availability
Is it in stock at this pin code. For one six-digit pin code and one product (listingId: one retailer listing, such as a search_listings result; or productId: that Rewalto product’s listings read at this pin, across retailers): in_stock, out_of_stock or unknown per listing, from its newest kept reading there, with the reading time and, where recorded, the store. Never a guess: unknown says why (stale, no_reading_at_pin, stock_not_reported, excluded_pin_day). Unknown rows cost nothing. Spends credits at the published read rate, with no quote; the answer’s `meta.credits` says what was charged and gives the receipt. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- pincode (string, required): A six-digit pin code.
- listingId (string, optional): A listing id (for example a search_listings result id). Give this or productId.
- productId (string, optional): A Rewalto product id (a listing’s productId). Give this or listingId.
get_brand
A brand. One brand and where it is listed. Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- name (string, required): The brand name.
get_brand_ad
One brand ad in full. One ad Rewalto holds: the normalised fields, the provider's own object for it in full and every pull of it. Free (the REST route is public). Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- adId (string, required): An ad id from list_brand_ads.
get_brand_ad_search
A brand ads search. A brand ads search: status, per-platform state, ads found and new, and errors. Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- searchId (string, required): The searchId from search_brand_ads.
get_economic_indicators
India economic indicators: CPI, WPI, IIP, GDP, unemployment (live). One page of one of India's official economic indicators, read now from the Ministry of Statistics and Programme Implementation: cpi (Consumer Price Index and inflation, by state, sector and group), wpi (Wholesale Price Index), iip (Index of Industrial Production, monthly), gdp (quarterly or annual, Rs crore) or unemployment (labour force survey rate). Rows carry the publisher's own field names; page through with page (data.totalPages). Live: nothing is kept. Free. At most 60 reads an hour for your organisation. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- indicator (string, required): cpi, wpi, iip, gdp or unemployment.
- year (string, optional): Years, comma separated: 2025 (cpi, wpi, iip) or 2025-26 (gdp).
- month (string, optional): Months 1 to 12, comma separated (cpi, wpi, iip).
- state (string, optional): State codes, comma separated; 99 is all India (cpi, unemployment).
- sector (string, optional): 1 rural, 2 urban, 3 combined (cpi, unemployment).
- frequency (string, optional): gdp: quarterly (default) or annual; unemployment: annual (default), quarterly or monthly.
- page (string, optional): The page, from 1 (default 1).
get_google_search_results
Google search results (India) for one query. Rewalto's Google search results for one query in India: every block on the results page in order (organic results, ads, question boxes, related searches, products and more), with rank, title, link, site and snippet. Every reading is kept as Rewalto history; the same request read in the last 24 hours answers from it (meta.reused). A new reading takes a minute or two: the first call answers data.status "pending" with meta.retryAfterSeconds and charges nothing; call again with the same arguments to collect it. Charged per block delivered at the history rate. Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- q (string, required): The search, e.g. atta.
- geo (string, optional): IN (all India), the default.
- language (string, optional): en (default) or hi.
- device (string, optional): desktop (default) or mobile.
- depth (string, optional): Organic results to read: 10 (default), 20, 30, 50 or 100.
get_google_search_volume
Google monthly search volume (India) per keyword. Rewalto's Google search volume for 1 to 20 keywords in India: average monthly searches over the last 12 months, searches in each month as far back as Google gives them (newest first), cost per click in US dollars and advertiser competition. Every reading is kept as Rewalto history; the same request read in the last 7 days answers from it (meta.reused). Charged per figure delivered (each average and each month) at the history rate. Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- keywords (string, required): 1 to 20 keywords, comma separated, e.g. atta,maggi.
- geo (string, optional): IN (all India), the default.
- language (string, optional): en (default) or hi.
get_google_trending_now
Google Trends Trending Now (India): what India is searching for. The searches Google Trends lists as trending in India, from Rewalto's kept readings (taken every 6 hours): each with Google's approximate search band (200+, 2K+) and its lower bound, when it started trending and the news stories Google links to it. Answers the newest reading, or the newest one of an IST day (day, YYYY-MM-DD). The band is Google's own rough count, not search volume. Charged per search delivered at the Google Trends history rate; the same reading re-read within 7 days is free. Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- geo (string, optional): IN (all India), the default.
- day (string, optional): An IST day, YYYY-MM-DD: the newest reading of that day. Default: the newest reading.
get_google_trends
Google Trends (India): interest over time, by state, related queries. Rewalto's Google Trends data for 1 to 5 keywords in India, read together: interest over time per keyword (weekly for past_12_months), interest by state, and for a single keyword its top and rising related queries. Every value is a relative index from 0 to 100 against the highest point of the keywords read together, never search volume; readings of different keyword sets are not on one scale. The newest period is usually partial (still running). Every reading is kept as Rewalto history; the same request read in the last 24 hours answers from it (meta.reused). Charged per data point delivered (each index value and related query) at the history rate. Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- keywords (string, required): 1 to 5 keywords, comma separated, e.g. atta,maggi.
- geo (string, optional): IN (all India), the default.
- timeRange (string, optional): past_30_days, past_90_days, past_12_months (default) or past_5_years.
- type (string, optional): web (default), news, youtube, images or shopping.
get_instagram_account
A public Instagram account (held). Approved internal clients only (Orcheo). The account as Core holds it: id with namespace, verified ids in other namespaces, counts, bio, links and provenance. data null with meta.availability not_held when Core has not read it: quote operation profile. Free, never collects. Needs an API key of an approved client (C-047); any other caller gets not_found. Paging, provenance, availability, receipts and collector issues come back as structured fields.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- username (string, required): Instagram username, without @.
get_instagram_capabilities
Instagram operations: state, schemas, limits, rights. Approved internal clients only (Orcheo). Every Instagram operation Core offers, with its true state (live, degraded or planned), read route, MCP tool, collectors in order, list price per upstream call, page sizes, fields, unsupported fields, rights and a sanitised real example. Free. Needs an API key of an approved client (C-047); any other caller gets not_found. Paging, provenance, availability, receipts and collector issues come back as structured fields.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- None
get_instagram_file
Rewalto's copy of an Instagram image or video. Approved internal clients only (Orcheo). A short-lived download link (15 minutes) to Rewalto’s copy of a profile picture, cover, image or video, by the sha256 in a record’s files (Instagram’s own links expire within days). Free. Needs an API key of an approved client (C-047); any other caller gets not_found. Paging, provenance, availability, receipts and collector issues come back as structured fields.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- sha256 (string, required): files[].sha256 of a held record.
get_instagram_media
A public Instagram post or reel (held). Approved internal clients only (Orcheo). The post or reel as Core holds it, by shortcode. data null with meta.availability not_held when Core has not read it: quote operation media. Free, never collects. Needs an API key of an approved client (C-047); any other caller gets not_found. Paging, provenance, availability, receipts and collector issues come back as structured fields.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- shortcode (string, required): The shortcode from the permalink (instagram.com/p/<shortcode>/).
get_location_filter
What a place covers. Resolves a location id (a pin, city, area or dark store) to its full list of pin codes, what is kept there per retailer, where a fresh collection could run, and exactly what a paid read of it would cover: its pin count is the confirmPins a multi-pin read needs. Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- location (string, required): A location id, from list_location_cities or list_location_stores.
- retailer (string, optional): Only this retailer.
get_pin_availability
Share in stock at a pin code. For one six-digit pin code (optionally one retailer), per retailer: how many listings read there are in stock and out of stock, by each listing’s newest kept reading, and the share in stock. Old, unreported and left-out readings are counted as unknown, by reason. Spends credits at the published read rate, with no quote; the answer’s `meta.credits` says what was charged and gives the receipt. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- pincode (string, required): A six-digit pin code.
- retailer (string, optional): Only this retailer, a key from list_retailers.
get_pincode
Pin code lookup. One six-digit Indian pin code: its city, district and state, whether it is urban, every post office India Post lists for it, and which retailers Rewalto has read there (first and newest day, days, readings). Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- pincode (string, required): A six-digit pin code, e.g. 560034.
get_series
Daily price and stock series. Daily series for one product, brand, retailer or location, for charts: lowest, middle and highest price, stock readings in, out and unknown, and search position. A day with no reading is a gap, never filled. Charged at the published history rate per day with readings; gaps cost nothing; re-reading identical data within 7 days is free. Count it first with count_series. With too few credits the API refuses with `credits_exhausted` and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- retailer (string, optional): A retailer key, from list_retailers.
- pincode (string, optional): A six-digit pin code.
- location (string, optional): A location id (list_location_cities, list_location_stores); never with pincode.
- confirmPins (string, optional): The pin count get_location_filter showed: consent to a multi-pin read.
- brand (string, optional): A brand name.
- productId (string, optional): A Rewalto product id.
- retailerSku (string, optional): The retailer's own product id (with retailer).
- from (string, optional): First day, YYYY-MM-DD.
- to (string, optional): Last day, YYYY-MM-DD.
- groupBy (string, optional): none, retailer, pincode, brand or product (default none).
get_store_catalogue
One D2C store’s own catalogue: products, variants, prices and stock. Rewalto's reading of one D2C store's own public catalogue (Shopify stores): every product with its brand, type, tags, dates and image, and every variant with its SKU, price, struck-through price and stock. A store is read only when its robots.txt allows it and its own terms do not forbid robots (refused otherwise); a host with no public catalogue answers not_found. Charged per product delivered at the history rate. Every reading is kept as Rewalto history; the same request read in the last 24 hours answers from it (meta.reused). Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- host (string, required): The store host name, e.g. www.boat-lifestyle.com.
- depth (string, optional): Products to read: 250 (default) or 1000.
get_weather
Weather by place in India: now, 48 hours, days (live). The weather for one place in India, read now: a six-digit pin code (its centre point) or lat and lon. Answers the current hour, the next 48 hours (temperature, humidity, wind, cloud, pressure, rain, sky) and up to 9 IST days (low, high, rain), with the licence credit in data.licence. Live: nothing is kept. Free. At most 60 reads an hour for your organisation. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- pincode (string, optional): A six-digit pin code, e.g. 560001.
- lat (string, optional): Latitude in decimal degrees (with lon, instead of a pin code).
- lon (string, optional): Longitude in decimal degrees.
- days (string, optional): Days of forecast, 1 to 9 (default 3).
interpret_query
Read a question into a request. Reads a typed question ("Amul butter price in Pune on Blinkit") into the request that answers it: the route (data, fresh, watch, finder or request), the operation to call (`target`) and its fields under that operation’s own names, each `stated` or `inferred`, plus what could not be mapped (`unresolved`). The same reading the website shows. Runs, quotes and charges nothing: call the target with the fields once the user confirms them. `route: null` means no reading; search the text as it is. Free. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- Free
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- text (string, required): The question, as typed.
list_ad_creatives
Ad creatives (Google Ads Transparency Center). Each ad creative a watched brand's advertiser ran in India, as Google's Ads Transparency Center lists it, read weekly: advertiser and creative ids, format (text, image or video), first and last day shown, a fingerprint and the creative's public page on the centre; never the ad itself. readVia: the brand's own advertiser account or its website (which also finds agency-placed ads). Newest day last shown first; optionally one brand, one advertiser id and a day range. Spends credits at this dataset’s published rate, with no quote; `meta.credits` shows the rate, says what was charged and gives the receipt. Re-reading the same records within 7 days is free. With too few credits the API refuses with `credits_exhausted`, returns no data and charges nothing. Needs an API key; answers for the key’s own organisation only.
- Credit cost
- May spend credits, only for data delivered
- Who can call it
- API key or Sign in with Rewalto, permission data:read
- Inputs
- brand (string, optional): A watched brand (exact), as in the brand field.
- advertiser (string, optional): An advertiser id: AR followed by 20 digits.
- from (string, optional): First day last shown, YYYY-MM-DD.
- to (string, optional): Last day last shown, YYYY-MM-DD.
- limit (string, optional): At most this many rows (the API caps it).
- cursor (string, optional): The `next` cursor from the previous page.