ParrotDocs
AI agent

Import and sync your products

If you already sell online, your products are already written down somewhere. Press Import & sync on Products & Services and bring them in one of three ways. Whichever you choose, you see five products exactly as the agent will read them before anything is saved.

WayBest forWhat you need
Upload a fileA first load, or a shop whose prices rarely changeA spreadsheet saved as CSV
Connect your websiteA shop whose prices and stock change oftenThe product list link from your website developer
Your own systemA shop with its own developer who wants changes to appear instantlyAn API token with the catalog:write scope

Upload a file

One product per row. From Excel choose File → Save As → CSV UTF-8; from Google Sheets, File → Download → CSV. Download a template on the screen gives you the columns.

Parrot guesses which column is which — Product Name, Price (Ks.), Qty are all recognised — and you can change any of them. Uploading the same file again updates products rather than adding them twice: rows are matched by id, then SKU, then exact name.

Connect your website

Parrot reads the product list your website already has and keeps this catalogue in step, on a timer you choose (every 15 minutes to once a day):

On your websiteHere
A new productAppears, and the agent can quote it
A price changeThe next customer is told the new price
A new photoThe agent sends the new photo
Out of stockThe agent says it is out of stock
A product removedTaken off sale here

It only ever reads — nothing on your website is changed. Your website stays the place you edit prices; a price you change here on a synced item is replaced at the next sync, and the item says so. Keywords you add here are kept.

What to ask your developer for: the link to the product list (the API your website uses to show products) and one sample of what it returns. If the list comes in pages, put {page} where the page number goes: https://…/products?page={page}. If the link needs a key, add it as a header — it is stored encrypted and never shown again.

If a sync would take more than half of your products off sale at once, it

stops and tells you instead. That is what a website answering with half a list

looks like, and emptying the catalogue on a bad day would be worse than one

stale price.

Disconnecting a website keeps its products; they simply stop updating.

Your own system (API)

For a developer: send products whenever they are added or changed.

curl -X PUT $API/catalog/feed/items \
  -H "Authorization: Bearer prt_…" \
  -H "Content-Type: application/json" \
  -d '{ "items": [ {
        "id": "IP13PM-256",
        "name": "iPhone 13 Pro Max 256GB",
        "price": 3250000,
        "currency": "MMK",
        "description": "Unlocked. One year warranty.",
        "sku": "IP13PM-256",
        "category": "Phones",
        "stock": 4,
        "images": ["https://example.com/iphone.jpg"]
      } ] }'
  • Up to 500 items per request. id is required — it is your own id for the

product, and sending it again updates rather than duplicates.

  • Only fields you send are changed. price may be a number (shown as

3,250,000) or text (quoted exactly). Leave stock out for anything you do not count.

  • DELETE $API/catalog/feed/items/IP13PM-256 takes a product off sale. It is

hidden, not deleted, because past orders still name it.

The token needs the catalog:write scope — create one under Settings → Developer. Tokens made before that scope existed do not have it.