Ettajer for Developers

Quickstart

Auth → context → schema → draft theme → preview → merchant publish. AI controls presentation. Ettajer controls commerce.

AI

Draft themes, sections, and previews. Prefer batch mutations over one-off recreates.

Publish

Going live needs themes:publish. Keep it off for AI clients by default.

REST workflow

Same authorization for REST and MCP.

  1. 1

    Authenticate

    Use OAuth (docs) or an API key from the console. Send Authorization: Bearer ….

  2. 2

    Load store context

    GET /api/v1/context — branding, products, collections, and themes for the connected store.

  3. 3

    Read the theme schema

    GET /api/v1/themes/schema — allowed sections, settings, and reference shapes.

  4. 4

    Create a private draft

    POST /api/v1/themes with { "name": "AI Minimal", "provider": "claude" }. Does not publish.

  5. 5

    Build the homepage

    Prefer POST /api/v1/themes/:id/batch (or MCP apply_theme_batch) for hero, product-grid with real product IDs, and footer. Optional pages via /pages — not cart, checkout, or products.

  6. 6

    Generate a preview

    POST /api/v1/themes/:id/preview-token returns a short-lived signed URL. Same storefront renderer; real catalog and checkout. Merchant session can preview without a token.

  7. 7

    Merchant review

    Customize opens /dashboard/themes/editor?themeId=… and loads the draft in the visual editor.

  8. 8

    Publish (merchant)

    POST /api/v1/themes/:id/publish requires themes:publish. Transactional. Cart and checkout stay on Ettajer.

MCP path

Endpoint POST /api/v1/mcp. Prefer batch over repeated single-section calls.

get_contextget_theme_schemaget_productscreate_themeapply_theme_batchpreview_theme

Then merchant publish — or publish_theme only with themes:publish.

Create your first app

Add Claude and Cursor redirect URIs, then authorize the store.

Open console