Inkarto APIinkarto.com ↗
Access Inkarto product details, collection listings, and cart operations via API. Retrieve variants, pricing, availability, and images for stationery and art supplies.
What is the Inkarto API?
The Inkarto API exposes 3 endpoints covering product data, collection browsing, and cart interactions for inkarto.com, an Indian stationery and art supplies store. The get_product endpoint returns over 10 fields per product including variants with individual pricing, availability, and SKU. The get_collection_products endpoint lists paginated products by collection handle, and add_to_cart confirms item additions with line-level pricing in paise.
curl -X GET 'https://api.parse.bot/scraper/59d5bef1-92c2-4406-af88-76b623da1526/get_product' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace inkarto-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: inkarto SDK — bounded, re-runnable; every call capped."""
from parse_apis.inkarto_com_api import Inkarto, ProductNotFound
client = Inkarto()
# Browse a collection (category) — limit caps total items fetched.
for item in client.collection("shop-stationery-items-unique-stationery").products(limit=3):
print(item.title, item.price, item.available)
# Drill-down: take one product summary and fetch full details.
summary = client.collection("shop-stationery-items-unique-stationery").products(limit=1).first()
try:
product = client.products.get(handle=summary.handle)
print(product.title, product.vendor, product.product_type)
for v in product.variants:
print(f" variant {v.id}: {v.price} (available={v.available})")
except ProductNotFound as e:
print("product gone:", e.handle)
# Add the first variant to cart.
if product.variants:
cart_item = client.carts.add(variant_id=str(product.variants[0].id), quantity=1)
print(cart_item.title, cart_item.quantity, cart_item.price)
print("exercised: collection.products / products.get / carts.add")
Retrieve full product details by handle (URL slug). Returns title, description HTML, vendor, product type, tags, variants with pricing and availability, and all product images.
| Param | Type | Description |
|---|---|---|
| handlerequired | string | Product URL slug (e.g. 'mochiri-co-japan-charcoal-honeycomb-fountain-pen-i-long-writing-partner'). |
{
"type": "object",
"fields": {
"id": "integer — Shopify product ID",
"tags": "string — comma-separated product tags",
"title": "string — product name",
"handle": "string — URL slug",
"images": "array of image objects with id, src, width, height",
"vendor": "string — brand or vendor name",
"options": "array of product options (e.g. size, color)",
"variants": "array of variant objects with id, title, price, compare_at_price, sku, available, options",
"created_at": "string — ISO datetime when created",
"updated_at": "string — ISO datetime of last update",
"product_type": "string — category/type label",
"published_at": "string — ISO datetime when published",
"description_html": "string — full product description in HTML"
},
"sample": {
"data": {
"id": 9298158420181,
"tags": "Back-in-stock, BEST_150, mochiri",
"title": "Mochiri Co. Japan inspired Charcoal Honeycomb Fountain Pen I Long Writing Partner",
"handle": "mochiri-co-japan-charcoal-honeycomb-fountain-pen-i-long-writing-partner",
"images": [
{
"id": 51825595482325,
"src": "https://cdn.shopify.com/s/files/1/0620/2268/0789/files/4_4a60adf0-aa94-47ec-9ed4-e0d916950e80.jpg?v=1783164125",
"width": 1080,
"height": 1080
}
],
"vendor": "mochiri",
"options": [
{
"id": 11996629631189,
"name": "Title",
"values": [
"Default Title"
],
"position": 1,
"product_id": 9298158420181
}
],
"variants": [
{
"id": 54028177244373,
"sku": "CHARCOAL-2",
"price": "4450.00",
"title": "Default Title",
"option1": "Default Title",
"option2": null,
"option3": null,
"available": false,
"compare_at_price": "7800.00"
}
],
"created_at": "2026-03-10T09:39:42-04:00",
"updated_at": "2026-08-04T09:55:23-04:00",
"product_type": "Fountain pens",
"published_at": "2026-06-20T03:02:59-04:00",
"description_html": "<p>Experience ultra-smooth writing...</p>"
},
"status": "success"
}
}About the Inkarto API
Product Data
The get_product endpoint takes a product handle (the URL slug) and returns the full product record. Response fields include title, vendor, tags (comma-separated), options (e.g. size or color), and an images array with src, width, and height per image. The variants array is where per-SKU detail lives: each variant exposes id, title, price, compare_at_price, sku, available, and options. The created_at and updated_at ISO datetimes reflect when the record was first listed and last modified.
Collection Browsing
The get_collection_products endpoint accepts a collection_handle (e.g. shop-stationery-items-unique-stationery) and returns paginated product summaries including price, availability, and thumbnail image. The page and limit parameters (1–250 items per page) control pagination, and results are auto-iterated across pages. This is the right endpoint for building category indexes or syncing a product catalog subset.
Cart Operations
The add_to_cart endpoint accepts a variant_id sourced from get_product's variants[*].id field and an optional quantity. Each call creates an independent cart session. The response confirms the addition with price and line_price (both in paise, India's smallest currency unit), plus title, handle, vendor, sku, url, and image. This is useful for price validation and checkout flow prototyping rather than persistent cart management.
The Inkarto API is a managed, monitored endpoint for inkarto.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when inkarto.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official inkarto.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Sync Inkarto product catalog into an internal database using collection handles and variant-level pricing.
- Monitor price changes on specific products by polling
get_productand comparingvariants[*].priceandcompare_at_priceover time. - Build a stationery product search index by iterating collections with
get_collection_productsand extracting titles, tags, and images. - Validate cart totals and confirm
line_pricein paise before redirecting users to checkout usingadd_to_cart. - Identify out-of-stock variants by checking
variants[*].availablefromget_productresponses. - Aggregate vendor and product type data across collections to categorize Inkarto's catalog by brand or format.
- Pull high-resolution product images via the
imagesarray for use in marketing materials or comparison tools.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Inkarto have an official developer API?+
What does `get_product` return beyond basic title and price?+
id, sku, price, compare_at_price, available, title, and options. It also returns all product images with pixel dimensions, comma-separated tags, vendor, product type, and ISO timestamps for creation and last update.Are prices in rupees or another unit?+
add_to_cart — both price and line_price — are in paise, the smallest Indian currency unit (1 rupee = 100 paise). The get_product endpoint returns price fields on variants; apply the same divide-by-100 conversion to display rupee amounts.Does the API cover product reviews or ratings?+
Can I search for products by keyword rather than browsing by collection handle?+
handle for get_product or a collection_handle for get_collection_products. Keyword-based search is not exposed. You can fork this API on Parse and revise it to add a search endpoint.