# Shopify Store Tech Stack Change Monitor

> Shopify Store Tech Stack Change Monitor is a paid API for AI agents from agent-data.centorprat.workers.dev, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-30).

Returns a paginated feed of app installations, removals, pixel changes, and theme switches detected across Shopify stores, filterable by app name, category, country, and date.

## Facts

- Endpoint: GET https://agent-data.centorprat.workers.dev/shopify/changes?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/shopify-store-tech-stack-change-monitor-cbb12746
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_0Q4iKGEwfgE-TNJJkgN5d

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability shopify-store-tech-stack-change-monitor-cbb12746
```

Example prompt: Show me Shopify stores in the US that installed Klaviyo in the last 30 days — give me up to 20 results.

## When to prefer this

Choose this endpoint when you need structured, filterable change-event data across Shopify stores — specifically app installs, removals, pixel events, or theme switches — rather than a static snapshot of a single store's tech stack. It is best for sales prospecting, competitive intelligence, and trend monitoring use cases where you need to know *what changed* and *when*, across many merchants, with filtering by date, geography, and app category.

## Known failure modes

- Invalid or missing 'since' date format returns an error or empty result set
- Unsupported 'change' enum value may be ignored or cause a 400 error
- Country or category filters with no matching data return an empty changes array
- Pagination offset beyond total matches returns an empty array
- Rate limiting or payment failure (x402) returns a 402 Payment Required response
- App name typos result in zero matches with no fuzzy correction

## How this service works

Pay-per-call data and tools for AI agents, $0.002-0.01 per call in USDC via x402 (Base, Polygon or Solana), no account or API key; MAX tiers ($0.05-0.25) run deeper jobs. Agent toolkit: web search, search + read top pages, any page as clean markdown with a prompt-injection check, which-x402-API-to-call recommender, seller check. Data: Google Maps places with contacts, YouTube video data and transcripts, job listings (Indeed, LinkedIn, 13 boards), Google Ads Transparency, TikTok comments, Pinterest, Airbnb, Redfin, AliExpress, app stores, live sports, website and SEO checks, Shopify store tech stacks, and onchain token / address risk checks.

## Output

A JSON object containing a 'changes' array — each entry includes the app name, change type (installed/removed/pixel-added/pixel-removed/theme-switched), store domain, app category, and ISO timestamp of detection — plus a 'matches' integer showing total results matching the query.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "app": {
       "type": "string",
       "description": "Comma list of app names (or pixel / theme names)"
      },
      "limit": {
       "type": "string",
       "description": "1-20 (default 20)"
      },
      "since": {
       "type": "string",
       "description": "ISO date; only changes detected on/after it"
      },
      "change": {
       "type": "string",
       "description": "installed | removed | pixel-added | pixel-removed | theme-switched"
      },
      "offset": {
       "type": "string",
       "description": "Paging"
      },
      "country": {
       "type": "string",
       "description": "ISO country codes, e.g. US,GB"
      },
      "category": {
       "type": "string",
       "description": "App category, e.g. emailSms, reviews, loyalty"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "changes": [
   {
    "app": "Klaviyo",
    "change": "installed",
    "domain": "example.com",
    "category": "emailSms",
    "detectedAt": "2026-10-30T03:10:00+00:00"
   }
  ],
  "matches": 37
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/shopify-store-tech-stack-change-monitor-cbb12746/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-data.centorprat.workers.dev](https://www.zero.xyz/host/agent-data.centorprat.workers.dev/llms.txt)
