{
  "openapi": "3.0.1",
  "info": {
    "title": "7-Eleven Canada Store Scraper🇨🇦",
    "description": "Scrape 7-Eleven Canada store locations and available business details, including store names, addresses, phone numbers, opening hours, coordinates, and other location information. Useful for retail research, location intelligence, market analysis, mapping, and business data collection.",
    "version": "1.0",
    "x-build-id": "RD8dphvAeFf5IuIyS"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jordan-byte~seven-eleven-canada-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jordan-byte-seven-eleven-canada-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/jordan-byte~seven-eleven-canada-scraper/runs": {
      "post": {
        "operationId": "runs-sync-jordan-byte-seven-eleven-canada-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/jordan-byte~seven-eleven-canada-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-jordan-byte-seven-eleven-canada-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "storeIds": {
            "title": "Store IDs",
            "type": "array",
            "description": "Get 7NOW delivery products from one specific store, several specific stores, or none at all - just this Actor's internal store <code>id</code> for each (e.g. <code>37852</code>), one per line. There's no public per-store page to copy an ID from, so the usual flow is: run this Actor once with <b>Store IDs</b> empty (nationwide or filtered by <b>Location filter</b>) to see which stores it finds, note the <code>storeId</code> field on any products you care about, then run again with just those IDs here for fast, targeted re-scrapes. Defaults to one real Vancouver store so a first run is fast and cheap - clear this field for broader coverage instead. Ignored when <b>Scrape entire site</b> is on.",
            "default": [
              "37852"
            ],
            "items": {
              "type": "string"
            }
          },
          "locationQuery": {
            "title": "Location filter",
            "type": "string",
            "description": "Only used when <b>Store IDs</b> is empty. Filters stores by city, province, postal code, or address text, e.g. <code>Vancouver</code> or <code>AB</code>. Leave empty to search from every major city this Actor covers nationwide (capped by <b>Max stores</b>). Ignored when <b>Scrape entire site</b> is on.",
            "default": ""
          },
          "productName": {
            "title": "Product name filter",
            "type": "string",
            "description": "Only return products whose name contains this text (case-insensitive, e.g. <code>coffee</code> or <code>chips</code>). Leave empty to get every product 7NOW offers at each matched store.",
            "default": ""
          },
          "maxStores": {
            "title": "Max stores",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum number of stores to scrape 7NOW products from (default: 10, for a fast/cheap preview). Set to 0 for unlimited. Ignored when <b>Scrape entire site</b> is on.",
            "default": 10
          },
          "maxProductsPerStore": {
            "title": "Max products per store",
            "minimum": 0,
            "type": "integer",
            "description": "Only used when <b>Product name filter</b> is empty. Caps how many products are saved per store. Default is 5, for a fast/cheap preview - a single store's full catalog can run into the hundreds, so raise this (or set it to 0 for unlimited) once you know what you need. Ignored when <b>Scrape entire site</b> is on.",
            "default": 5
          },
          "deliveryCategoryFilter": {
            "title": "Delivery categories to include",
            "type": "array",
            "description": "Category names to crawl per store (matched case-insensitively against the category names 7NOW shows there, e.g. Beverages, Chips & Snacks). Leave empty to crawl every category 7NOW shows for that store.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "scrapeEntireSite": {
            "title": "Scrape entire site",
            "type": "boolean",
            "description": "Ignore <b>Store IDs</b>, <b>Location filter</b>, <b>Max stores</b>, and <b>Max products per store</b>, and instead discover every 7-Eleven store nationwide and pull each one's full 7NOW catalog. This is the most complete run this Actor can do - and the most expensive, since it drives one full browser session per store. Off by default.",
            "default": false
          },
          "notificationWebhookUrl": {
            "title": "Notification webhook URL (Discord or Slack)",
            "type": "string",
            "description": "Optional. A Discord or Slack incoming webhook URL - when set, this Actor posts a one-line summary (stores scraped, products found) to it after the run finishes. Leave empty to skip notifications.",
            "default": ""
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}