{
 "openapi": "3.1.0",
 "info": {
  "title": "Skryp API",
  "version": "2026-10-01",
  "description": "Web scraping API for AI agents: scrape, crawl, search, extract, datasets, monitors, a live browser and the web archive. Every page result carries a receipt with the route, the verified exit country and the credits charged. Firecrawl-compatible endpoints are under /v2. Docs: /docs/api. MCP tools: /mcp-tools.json."
 },
 "servers": [
  {
   "url": "https://api.skryp.example",
   "description": "Placeholder until the public address is set"
  }
 ],
 "security": [
  {
   "bearer": []
  }
 ],
 "paths": {
  "/v1/account": {
   "get": {
    "summary": "V1 Account",
    "operationId": "v1_account_v1_account_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Account V1 Account Get"
        }
       }
      }
     }
    }
   }
  },
  "/v1/archive": {
   "post": {
    "summary": "V1 Archive",
    "operationId": "v1_archive_v1_archive_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "action": {
          "description": "get: the page on a date · snapshots: captures and real changes · diff: then vs now (or two dates) · history: a field/section across time · urls: every address a site or path ever had",
          "enum": [
           "get",
           "snapshots",
           "diff",
           "history",
           "urls"
          ],
          "type": "string"
         },
         "url": {
          "description": "The page. For urls: a site (example.com) or a path (example.com/blog/).",
          "type": "string"
         },
         "at": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "get/diff: the date: 2023, 2023-06, 2023-06-15, an ISO time, '2 years ago', 'first'. Omit for the newest copy."
         },
         "direction": {
          "default": "nearest",
          "description": "get: which capture relative to `at`.",
          "enum": [
           "nearest",
           "before",
           "after"
          ],
          "type": "string"
         },
         "compare_to": {
          "default": "live",
          "description": "diff: 'live' (default) or a second date.",
          "type": "string"
         },
         "since": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "snapshots/history/urls: start of the period."
         },
         "until": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "snapshots/history/urls: end of the period."
         },
         "every": {
          "default": "change",
          "description": "snapshots/history: one row per real change (default), per day/month/year, or all.",
          "enum": [
           "change",
           "day",
           "month",
           "year",
           "all"
          ],
          "type": "string"
         },
         "focus": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "Only the sections about this (e.g. 'pricing', 'refund policy')."
         },
         "schema": {
          "anyOf": [
           {
            "additionalProperties": true,
            "type": "object"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "get/diff/history: fields to read from each version (JSON Schema)."
         },
         "prompt": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "get/diff/history: what to read, in words."
         },
         "points": {
          "default": 10,
          "description": "history: how many versions to read, spread across the period (max 40).",
          "type": "integer"
         },
         "limit": {
          "anyOf": [
           {
            "type": "integer"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "snapshots: rows (default 50) · urls: addresses (default 1000, up to 20000)."
         },
         "match": {
          "default": "auto",
          "description": "urls: auto = prefix for a path, host for a bare site.",
          "enum": [
           "auto",
           "exact",
           "prefix",
           "host",
           "domain"
          ],
          "type": "string"
         },
         "kind": {
          "default": "pages",
          "description": "urls: what to list.",
          "enum": [
           "pages",
           "documents",
           "images",
           "feeds",
           "all"
          ],
          "type": "string"
         },
         "search": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "urls: only addresses containing these words."
         },
         "check_live": {
          "default": 0,
          "description": "urls: also check this many of them on the live site (gone, redirected, live). Up to 300.",
          "type": "integer"
         },
         "source": {
          "default": "auto",
          "description": "auto = Wayback, then Common Crawl.",
          "enum": [
           "auto",
           "wayback",
           "commoncrawl"
          ],
          "type": "string"
         }
        },
        "required": [
         "action",
         "url"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Archive V1 Archive Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "The web's memory: any page as it was on a date, its capture and change timeline, then-vs-now diffs, a field\ntracked across years, and every URL a site ever had (with which are gone now). 1 credit per archived page read."
   }
  },
  "/v1/billing": {
   "get": {
    "summary": "Billing View",
    "operationId": "billing_view_v1_billing_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Billing View V1 Billing Get"
        }
       }
      }
     }
    }
   }
  },
  "/v1/billing/ledger": {
   "get": {
    "summary": "Ledger",
    "operationId": "ledger_v1_billing_ledger_get",
    "parameters": [
     {
      "name": "before",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Before"
      }
     },
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 100,
       "title": "Limit"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Ledger V1 Billing Ledger Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/browser": {
   "get": {
    "summary": "Browser Sessions",
    "operationId": "browser_sessions_v1_browser_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Browser Sessions V1 Browser Get"
        }
       }
      }
     }
    }
   },
   "post": {
    "summary": "Browser Open",
    "operationId": "browser_open_v1_browser_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "additionalProperties": true,
        "type": "object",
        "title": "Body"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Browser Open V1 Browser Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/browser/{sid}": {
   "post": {
    "summary": "Browser Act",
    "operationId": "browser_act_v1_browser__sid__post",
    "parameters": [
     {
      "name": "sid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Sid"
      }
     }
    ],
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": true,
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Browser Act V1 Browser  Sid  Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "delete": {
    "summary": "Browser Close",
    "operationId": "browser_close_v1_browser__sid__delete",
    "parameters": [
     {
      "name": "sid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Sid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Browser Close V1 Browser  Sid  Delete"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/catalog": {
   "get": {
    "summary": "Catalog",
    "operationId": "catalog_v1_catalog_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Catalog V1 Catalog Get"
        }
       }
      }
     }
    },
    "security": []
   }
  },
  "/v1/collect": {
   "post": {
    "summary": "V1 Collect",
    "operationId": "v1_collect_v1_collect_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "url": {
          "description": "A listing, search or category page.",
          "type": "string"
         },
         "fields": {
          "description": "What you want per record, in words: ['model', 'RAM', 'price', 'stock', 'url'].",
          "items": {
           "type": "string"
          },
          "type": "array"
         },
         "limit": {
          "default": 100,
          "type": "integer"
         },
         "max_pages": {
          "default": 10,
          "type": "integer"
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         },
         "strict_country": {
          "default": false,
          "type": "boolean"
         }
        },
        "required": [
         "url",
         "fields"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Collect V1 Collect Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "Records with the fields you ask for, from the page's real data source (site API or data embedded in the\npage), checked against what the page shows. Saves a recipe so later runs need no discovery or model."
   }
  },
  "/v1/compare": {
   "post": {
    "summary": "V1 Compare",
    "operationId": "v1_compare_v1_compare_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "countries": {
          "description": "Two-letter countries, e.g. ['ZA','US','GB','DE'].",
          "items": {
           "type": "string"
          },
          "type": "array"
         },
         "url": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "The page to read from every country."
         },
         "urls": {
          "anyOf": [
           {
            "additionalProperties": {
             "type": "string"
            },
            "type": "object"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "Per-country URLs when the site uses different ones."
         },
         "schema": {
          "anyOf": [
           {
            "additionalProperties": true,
            "type": "object"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "Fields to compare (default: name, price, currency, availability)."
         },
         "base_currency": {
          "default": "USD",
          "type": "string"
         },
         "strict_country": {
          "default": true,
          "type": "boolean"
         }
        },
        "required": [
         "countries"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Compare V1 Compare Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "Compare a product or page across countries: each row comes through a verified exit in that country,\nwith price converted to one currency, plus cheapest/dearest and a same-product check."
   }
  },
  "/v1/crawl": {
   "post": {
    "summary": "Crawl",
    "operationId": "crawl_v1_crawl_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "url": {
          "type": "string"
         },
         "limit": {
          "default": 50,
          "description": "Max pages (up to 5000).",
          "type": "integer"
         },
         "max_depth": {
          "default": 3,
          "type": "integer"
         },
         "include_paths": {
          "anyOf": [
           {
            "items": {
             "type": "string"
            },
            "type": "array"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "Regexes the URL path must match, e.g. ['^/blog/']."
         },
         "exclude_paths": {
          "anyOf": [
           {
            "items": {
             "type": "string"
            },
            "type": "array"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         },
         "formats": {
          "default": [
           "markdown"
          ],
          "items": {
           "enum": [
            "markdown",
            "html",
            "raw_html",
            "text",
            "links",
            "images",
            "metadata",
            "structured_data",
            "screenshot",
            "network"
           ],
           "type": "string"
          },
          "type": "array"
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         },
         "strict_country": {
          "default": false,
          "type": "boolean"
         },
         "include_subdomains": {
          "default": false,
          "type": "boolean"
         },
         "use_sitemap": {
          "default": true,
          "type": "boolean"
         },
         "webhook": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         }
        },
        "required": [
         "url"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Crawl V1 Crawl Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "Crawl a site in the background (durable; survives restarts). Returns a job id: poll job(status) and\njob(results) for pages; each page's content is read with read(ref)."
   }
  },
  "/v1/datasets": {
   "get": {
    "summary": "Datasets",
    "operationId": "datasets_v1_datasets_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Datasets V1 Datasets Get"
        }
       }
      }
     }
    }
   },
   "post": {
    "summary": "Create Dataset",
    "operationId": "create_dataset_v1_datasets_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "additionalProperties": true,
        "type": "object",
        "title": "Body"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Create Dataset V1 Datasets Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/datasets/{did}": {
   "get": {
    "summary": "Dataset",
    "operationId": "dataset_v1_datasets__did__get",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset V1 Datasets  Did  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "delete": {
    "summary": "Dataset Delete",
    "operationId": "dataset_delete_v1_datasets__did__delete",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset Delete V1 Datasets  Did  Delete"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/datasets/{did}/changes": {
   "get": {
    "summary": "Dataset Changes",
    "operationId": "dataset_changes_v1_datasets__did__changes_get",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     },
     {
      "name": "since",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "number"
        },
        {
         "type": "null"
        }
       ],
       "title": "Since"
      }
     },
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 200,
       "title": "Limit"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset Changes V1 Datasets  Did  Changes Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/datasets/{did}/export": {
   "post": {
    "summary": "Dataset Export",
    "operationId": "dataset_export_v1_datasets__did__export_post",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "anyOf": [
         {
          "type": "object",
          "additionalProperties": true
         },
         {
          "type": "null"
         }
        ],
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset Export V1 Datasets  Did  Export Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/datasets/{did}/records": {
   "get": {
    "summary": "Dataset Records",
    "operationId": "dataset_records_v1_datasets__did__records_get",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     },
     {
      "name": "offset",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 0,
       "title": "Offset"
      }
     },
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 100,
       "title": "Limit"
      }
     },
     {
      "name": "status",
      "in": "query",
      "required": false,
      "schema": {
       "type": "string",
       "default": "active",
       "title": "Status"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset Records V1 Datasets  Did  Records Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/datasets/{did}/refresh": {
   "post": {
    "summary": "Dataset Refresh",
    "operationId": "dataset_refresh_v1_datasets__did__refresh_post",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset Refresh V1 Datasets  Did  Refresh Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/datasets/{did}/schedule": {
   "put": {
    "summary": "Dataset Schedule",
    "operationId": "dataset_schedule_v1_datasets__did__schedule_put",
    "parameters": [
     {
      "name": "did",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Did"
      }
     }
    ],
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": true,
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Dataset Schedule V1 Datasets  Did  Schedule Put"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/extract": {
   "post": {
    "summary": "V1 Extract",
    "operationId": "v1_extract_v1_extract_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "url": {
          "type": "string"
         },
         "schema": {
          "anyOf": [
           {
            "additionalProperties": true,
            "type": "object"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "JSON Schema of the fields you want (object with properties)."
         },
         "prompt": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "What to extract, in words (with or without a schema)."
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         },
         "strict_country": {
          "default": false,
          "type": "boolean"
         },
         "render": {
          "default": "auto",
          "enum": [
           "auto",
           "never",
           "always"
          ],
          "type": "string"
         },
         "learn": {
          "default": true,
          "description": "Learn selectors so the next page with this layout needs no model.",
          "type": "boolean"
         }
        },
        "required": [
         "url"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Extract V1 Extract Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "Structured data from a page. Page data first (free), then learned selectors (free), then a small model.\nEvery value is checked against the page; `unverified` lists values the page does not contain."
   }
  },
  "/v1/health": {
   "get": {
    "summary": "Health",
    "operationId": "health_v1_health_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Health V1 Health Get"
        }
       }
      }
     }
    },
    "security": []
   }
  },
  "/v1/inspect": {
   "post": {
    "summary": "V1 Inspect",
    "operationId": "v1_inspect_v1_inspect_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "url": {
          "type": "string"
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         },
         "strict_country": {
          "default": false,
          "type": "boolean"
         }
        },
        "required": [
         "url"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Inspect V1 Inspect Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "What data a page exposes and the cheapest way to get it again: the site's own JSON calls (tested for\nreplay without a browser), embedded data, feeds, pagination, and whether a browser is needed."
   }
  },
  "/v1/jobs": {
   "get": {
    "summary": "Jobs",
    "operationId": "jobs_v1_jobs_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Jobs V1 Jobs Get"
        }
       }
      }
     }
    }
   }
  },
  "/v1/jobs/{jid}": {
   "get": {
    "summary": "Job",
    "operationId": "job_v1_jobs__jid__get",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Job V1 Jobs  Jid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/jobs/{jid}/results": {
   "get": {
    "summary": "Job Results",
    "operationId": "job_results_v1_jobs__jid__results_get",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     },
     {
      "name": "offset",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 0,
       "title": "Offset"
      }
     },
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 50,
       "title": "Limit"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Job Results V1 Jobs  Jid  Results Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/jobs/{jid}/{action}": {
   "post": {
    "summary": "Job Action",
    "operationId": "job_action_v1_jobs__jid___action__post",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     },
     {
      "name": "action",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Action"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Job Action V1 Jobs  Jid   Action  Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/logins": {
   "get": {
    "summary": "Logins List",
    "operationId": "logins_list_v1_logins_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Logins List V1 Logins Get"
        }
       }
      }
     }
    }
   }
  },
  "/v1/logins/{lid}": {
   "get": {
    "summary": "Login Get",
    "operationId": "login_get_v1_logins__lid__get",
    "parameters": [
     {
      "name": "lid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Lid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Login Get V1 Logins  Lid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/map": {
   "post": {
    "summary": "V1 Map",
    "operationId": "v1_map_v1_map_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "url": {
          "type": "string"
         },
         "search": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "Keep URLs matching these words, best matches first."
         },
         "limit": {
          "default": 200,
          "type": "integer"
         },
         "include_subdomains": {
          "default": false,
          "type": "boolean"
         },
         "sitemap": {
          "default": "include",
          "enum": [
           "include",
           "only",
           "skip"
          ],
          "type": "string"
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null
         }
        },
        "required": [
         "url"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Map V1 Map Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "List a site's URLs from its sitemaps and links, without fetching every page. 1 credit."
   }
  },
  "/v1/monitors": {
   "get": {
    "summary": "Monitors",
    "operationId": "monitors_v1_monitors_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Monitors V1 Monitors Get"
        }
       }
      }
     }
    }
   },
   "post": {
    "summary": "Create Monitor",
    "operationId": "create_monitor_v1_monitors_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "additionalProperties": true,
        "type": "object",
        "title": "Body"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Create Monitor V1 Monitors Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/monitors/{mid}": {
   "get": {
    "summary": "Monitor",
    "operationId": "monitor_v1_monitors__mid__get",
    "parameters": [
     {
      "name": "mid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Mid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Monitor V1 Monitors  Mid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "delete": {
    "summary": "Monitor Delete",
    "operationId": "monitor_delete_v1_monitors__mid__delete",
    "parameters": [
     {
      "name": "mid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Mid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Monitor Delete V1 Monitors  Mid  Delete"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/monitors/{mid}/{action}": {
   "post": {
    "summary": "Monitor Action",
    "operationId": "monitor_action_v1_monitors__mid___action__post",
    "parameters": [
     {
      "name": "mid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Mid"
      }
     },
     {
      "name": "action",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Action"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Monitor Action V1 Monitors  Mid   Action  Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/read": {
   "get": {
    "summary": "V1 Read",
    "operationId": "v1_read_v1_read_get",
    "parameters": [
     {
      "name": "ref",
      "in": "query",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Ref"
      }
     },
     {
      "name": "offset",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 0,
       "title": "Offset"
      }
     },
     {
      "name": "length",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 20000,
       "title": "Length"
      }
     },
     {
      "name": "section",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Section"
      }
     },
     {
      "name": "focus",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Focus"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response V1 Read V1 Read Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/recipes": {
   "get": {
    "summary": "Recipes",
    "operationId": "recipes_v1_recipes_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Recipes V1 Recipes Get"
        }
       }
      }
     }
    }
   },
   "post": {
    "summary": "V1 Recipe Save",
    "operationId": "v1_recipe_save_v1_recipes_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "additionalProperties": true,
        "type": "object",
        "title": "Body"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Recipe Save V1 Recipes Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/recipes/{rid}": {
   "get": {
    "summary": "Recipe",
    "operationId": "recipe_v1_recipes__rid__get",
    "parameters": [
     {
      "name": "rid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Rid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Recipe V1 Recipes  Rid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "delete": {
    "summary": "Recipe Delete",
    "operationId": "recipe_delete_v1_recipes__rid__delete",
    "parameters": [
     {
      "name": "rid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Rid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Recipe Delete V1 Recipes  Rid  Delete"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/recipes/{rid}/run": {
   "post": {
    "summary": "V1 Recipe Run",
    "operationId": "v1_recipe_run_v1_recipes__rid__run_post",
    "parameters": [
     {
      "name": "rid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Rid"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "anyOf": [
         {
          "type": "object",
          "additionalProperties": true
         },
         {
          "type": "null"
         }
        ],
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response V1 Recipe Run V1 Recipes  Rid  Run Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/recipes/{rid}/test": {
   "post": {
    "summary": "Recipe Test",
    "operationId": "recipe_test_v1_recipes__rid__test_post",
    "parameters": [
     {
      "name": "rid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Rid"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "anyOf": [
         {
          "type": "object",
          "additionalProperties": true
         },
         {
          "type": "null"
         }
        ],
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Recipe Test V1 Recipes  Rid  Test Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/requests": {
   "get": {
    "summary": "Requests List",
    "operationId": "requests_list_v1_requests_get",
    "parameters": [
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 50,
       "title": "Limit"
      }
     },
     {
      "name": "before",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "number"
        },
        {
         "type": "null"
        }
       ],
       "title": "Before"
      }
     },
     {
      "name": "tool",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Tool"
      }
     },
     {
      "name": "status",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Status"
      }
     },
     {
      "name": "origin",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Origin"
      }
     },
     {
      "name": "country",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Country"
      }
     },
     {
      "name": "q",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Q"
      }
     },
     {
      "name": "key_id",
      "in": "query",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Key Id"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Requests List V1 Requests Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/requests/{rid}": {
   "get": {
    "summary": "Request Detail",
    "operationId": "request_detail_v1_requests__rid__get",
    "parameters": [
     {
      "name": "rid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Rid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Request Detail V1 Requests  Rid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/runs/{run_id}": {
   "get": {
    "summary": "Run Get",
    "operationId": "run_get_v1_runs__run_id__get",
    "parameters": [
     {
      "name": "run_id",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Run Id"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Run Get V1 Runs  Run Id  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/runs/{run_id}/export": {
   "get": {
    "summary": "Run Export",
    "operationId": "run_export_v1_runs__run_id__export_get",
    "parameters": [
     {
      "name": "run_id",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Run Id"
      }
     },
     {
      "name": "format",
      "in": "query",
      "required": false,
      "schema": {
       "type": "string",
       "default": "csv",
       "title": "Format"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {}
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/runs/{run_id}/files/{fid}": {
   "get": {
    "summary": "Run File",
    "operationId": "run_file_v1_runs__run_id__files__fid__get",
    "parameters": [
     {
      "name": "run_id",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Run Id"
      }
     },
     {
      "name": "fid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Fid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {}
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/runs/{run_id}/records": {
   "get": {
    "summary": "Run Records",
    "operationId": "run_records_v1_runs__run_id__records_get",
    "parameters": [
     {
      "name": "run_id",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Run Id"
      }
     },
     {
      "name": "offset",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 0,
       "title": "Offset"
      }
     },
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 100,
       "title": "Limit"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Run Records V1 Runs  Run Id  Records Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/runs/{run_id}/{action}": {
   "post": {
    "summary": "Run Action",
    "operationId": "run_action_v1_runs__run_id___action__post",
    "parameters": [
     {
      "name": "run_id",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Run Id"
      }
     },
     {
      "name": "action",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Action"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Run Action V1 Runs  Run Id   Action  Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/scrape": {
   "post": {
    "summary": "V1 Scrape",
    "operationId": "v1_scrape_v1_scrape_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "$defs": {
         "Action": {
          "description": "A browser step run before the page is read (same idea as Firecrawl's actions).",
          "properties": {
           "type": {
            "enum": [
             "wait",
             "click",
             "type",
             "press",
             "scroll",
             "wait_for"
            ],
            "title": "Type",
            "type": "string"
           },
           "selector": {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "null"
             }
            ],
            "default": null,
            "title": "Selector"
           },
           "text": {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "null"
             }
            ],
            "default": null,
            "title": "Text"
           },
           "key": {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "null"
             }
            ],
            "default": null,
            "title": "Key"
           },
           "ms": {
            "anyOf": [
             {
              "type": "integer"
             },
             {
              "type": "null"
             }
            ],
            "default": null,
            "title": "Ms"
           },
           "direction": {
            "default": "down",
            "enum": [
             "down",
             "up"
            ],
            "title": "Direction",
            "type": "string"
           },
           "times": {
            "default": 1,
            "title": "Times",
            "type": "integer"
           }
          },
          "required": [
           "type"
          ],
          "title": "Action",
          "type": "object"
         }
        },
        "properties": {
         "url": {
          "type": "string",
          "description": "The page to read."
         },
         "urls": {
          "type": "array",
          "items": {
           "type": "string"
          },
          "maxItems": 100,
          "description": "Up to 100 pages, read in parallel; returns a list."
         },
         "formats": {
          "items": {
           "enum": [
            "markdown",
            "html",
            "raw_html",
            "text",
            "links",
            "images",
            "metadata",
            "structured_data",
            "screenshot",
            "network"
           ],
           "type": "string"
          },
          "title": "Formats",
          "type": "array"
         },
         "focus": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Focus"
         },
         "main_content": {
          "default": true,
          "title": "Main Content",
          "type": "boolean"
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Country"
         },
         "strict_country": {
          "default": false,
          "title": "Strict Country",
          "type": "boolean"
         },
         "network": {
          "default": "auto",
          "enum": [
           "auto",
           "direct",
           "residential"
          ],
          "title": "Network",
          "type": "string"
         },
         "render": {
          "default": "auto",
          "enum": [
           "auto",
           "never",
           "always"
          ],
          "title": "Render",
          "type": "string"
         },
         "wait_for_ms": {
          "default": 0,
          "title": "Wait For Ms",
          "type": "integer"
         },
         "actions": {
          "items": {
           "$ref": "#/$defs/Action"
          },
          "title": "Actions",
          "type": "array"
         },
         "max_age_s": {
          "anyOf": [
           {
            "type": "integer"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Max Age S"
         },
         "max_credits": {
          "anyOf": [
           {
            "type": "integer"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Max Credits"
         },
         "timeout_s": {
          "anyOf": [
           {
            "type": "number"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Timeout S"
         },
         "mobile": {
          "default": false,
          "title": "Mobile",
          "type": "boolean"
         },
         "headers": {
          "additionalProperties": {
           "type": "string"
          },
          "title": "Headers",
          "type": "object"
         },
         "include_tags": {
          "items": {
           "type": "string"
          },
          "title": "Include Tags",
          "type": "array"
         },
         "exclude_tags": {
          "items": {
           "type": "string"
          },
          "title": "Exclude Tags",
          "type": "array"
         },
         "images_in_markdown": {
          "default": false,
          "title": "Images In Markdown",
          "type": "boolean"
         },
         "archive": {
          "anyOf": [
           {
            "type": "boolean"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Archive"
         },
         "login": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "title": "Login"
         }
        },
        "title": "ScrapeOptions",
        "type": "object"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response V1 Scrape V1 Scrape Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "Read web pages. Cheapest working route first (cache, plain HTTP, residential IP, browser); every\nresult includes a receipt with credits, route and the verified exit country. With `login`, pages are read in\nthat account's own signed-in browser (never cached or substituted)."
   }
  },
  "/v1/search": {
   "post": {
    "summary": "V1 Search",
    "operationId": "v1_search_v1_search_post",
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
         "query": {
          "type": "string"
         },
         "limit": {
          "default": 10,
          "type": "integer"
         },
         "country": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "default": null,
          "description": "Search as seen from this country, e.g. ZA."
         },
         "strict_country": {
          "default": false,
          "type": "boolean"
         }
        },
        "required": [
         "query"
        ]
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response V1 Search V1 Search Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    },
    "description": "Web search across several engines (merged by rank), through our own routes. 1 credit (5 from a residential IP\nin another country), plus any results it reads."
   }
  },
  "/v1/usage": {
   "get": {
    "summary": "Usage",
    "operationId": "usage_v1_usage_get",
    "parameters": [
     {
      "name": "days",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 30,
       "title": "Days"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Usage V1 Usage Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/workflows": {
   "get": {
    "summary": "Workflows List",
    "operationId": "workflows_list_v1_workflows_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Workflows List V1 Workflows Get"
        }
       }
      }
     }
    }
   },
   "post": {
    "summary": "Workflow Create",
    "operationId": "workflow_create_v1_workflows_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "additionalProperties": true,
        "type": "object",
        "title": "Body"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Workflow Create V1 Workflows Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/workflows/validate": {
   "post": {
    "summary": "Workflow Validate",
    "operationId": "workflow_validate_v1_workflows_validate_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "additionalProperties": true,
        "type": "object",
        "title": "Body"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Workflow Validate V1 Workflows Validate Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/workflows/{wid}": {
   "get": {
    "summary": "Workflow Get",
    "operationId": "workflow_get_v1_workflows__wid__get",
    "parameters": [
     {
      "name": "wid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Wid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Workflow Get V1 Workflows  Wid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "put": {
    "summary": "Workflow Update",
    "operationId": "workflow_update_v1_workflows__wid__put",
    "parameters": [
     {
      "name": "wid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Wid"
      }
     }
    ],
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": true,
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Workflow Update V1 Workflows  Wid  Put"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "delete": {
    "summary": "Workflow Delete",
    "operationId": "workflow_delete_v1_workflows__wid__delete",
    "parameters": [
     {
      "name": "wid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Wid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Workflow Delete V1 Workflows  Wid  Delete"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/workflows/{wid}/runs": {
   "post": {
    "summary": "Workflow Run",
    "operationId": "workflow_run_v1_workflows__wid__runs_post",
    "parameters": [
     {
      "name": "wid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Wid"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "anyOf": [
         {
          "type": "object",
          "additionalProperties": true
         },
         {
          "type": "null"
         }
        ],
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Workflow Run V1 Workflows  Wid  Runs Post"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "get": {
    "summary": "Workflow Runs",
    "operationId": "workflow_runs_v1_workflows__wid__runs_get",
    "parameters": [
     {
      "name": "wid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Wid"
      }
     },
     {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 20,
       "title": "Limit"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "additionalProperties": true,
         "title": "Response Workflow Runs V1 Workflows  Wid  Runs Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v1/workflows/{wid}/schedule": {
   "put": {
    "summary": "Workflow Schedule",
    "operationId": "workflow_schedule_v1_workflows__wid__schedule_put",
    "parameters": [
     {
      "name": "wid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Wid"
      }
     }
    ],
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "additionalProperties": true,
        "title": "Body"
       }
      }
     }
    },
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Workflow Schedule V1 Workflows  Wid  Schedule Put"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v2/batch/scrape": {
   "post": {
    "summary": "Fc Batch",
    "operationId": "fc_batch_v2_batch_scrape_post",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Batch V2 Batch Scrape Post"
        }
       }
      }
     }
    }
   }
  },
  "/v2/batch/scrape/{jid}": {
   "get": {
    "summary": "Fc Batch Status",
    "operationId": "fc_batch_status_v2_batch_scrape__jid__get",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Batch Status V2 Batch Scrape  Jid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v2/crawl": {
   "post": {
    "summary": "Fc Crawl",
    "operationId": "fc_crawl_v2_crawl_post",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Crawl V2 Crawl Post"
        }
       }
      }
     }
    }
   }
  },
  "/v2/crawl/{jid}": {
   "get": {
    "summary": "Fc Crawl Status",
    "operationId": "fc_crawl_status_v2_crawl__jid__get",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     },
     {
      "name": "skip",
      "in": "query",
      "required": false,
      "schema": {
       "type": "integer",
       "default": 0,
       "title": "Skip"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Crawl Status V2 Crawl  Jid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   },
   "delete": {
    "summary": "Fc Crawl Cancel",
    "operationId": "fc_crawl_cancel_v2_crawl__jid__delete",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Crawl Cancel V2 Crawl  Jid  Delete"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v2/extract": {
   "post": {
    "summary": "Fc Extract",
    "operationId": "fc_extract_v2_extract_post",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Extract V2 Extract Post"
        }
       }
      }
     }
    }
   }
  },
  "/v2/extract/{jid}": {
   "get": {
    "summary": "Fc Extract Status",
    "operationId": "fc_extract_status_v2_extract__jid__get",
    "parameters": [
     {
      "name": "jid",
      "in": "path",
      "required": true,
      "schema": {
       "type": "string",
       "title": "Jid"
      }
     }
    ],
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Extract Status V2 Extract  Jid  Get"
        }
       }
      }
     },
     "422": {
      "description": "Validation Error",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      }
     }
    }
   }
  },
  "/v2/map": {
   "post": {
    "summary": "Fc Map",
    "operationId": "fc_map_v2_map_post",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Map V2 Map Post"
        }
       }
      }
     }
    }
   }
  },
  "/v2/scrape": {
   "post": {
    "summary": "Fc Scrape",
    "operationId": "fc_scrape_v2_scrape_post",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Scrape V2 Scrape Post"
        }
       }
      }
     }
    }
   }
  },
  "/v2/search": {
   "post": {
    "summary": "Fc Search",
    "operationId": "fc_search_v2_search_post",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "title": "Response Fc Search V2 Search Post"
        }
       }
      }
     }
    }
   }
  },
  "/v2/team/credit-usage": {
   "get": {
    "summary": "Fc Credits",
    "operationId": "fc_credits_v2_team_credit_usage_get",
    "responses": {
     "200": {
      "description": "Successful Response",
      "content": {
       "application/json": {
        "schema": {
         "additionalProperties": true,
         "type": "object",
         "title": "Response Fc Credits V2 Team Credit Usage Get"
        }
       }
      }
     }
    }
   }
  }
 },
 "components": {
  "schemas": {
   "HTTPValidationError": {
    "properties": {
     "detail": {
      "items": {
       "$ref": "#/components/schemas/ValidationError"
      },
      "type": "array",
      "title": "Detail"
     }
    },
    "type": "object",
    "title": "HTTPValidationError"
   },
   "ValidationError": {
    "properties": {
     "loc": {
      "items": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "integer"
        }
       ]
      },
      "type": "array",
      "title": "Location"
     },
     "msg": {
      "type": "string",
      "title": "Message"
     },
     "type": {
      "type": "string",
      "title": "Error Type"
     },
     "input": {
      "title": "Input"
     },
     "ctx": {
      "type": "object",
      "title": "Context"
     }
    },
    "type": "object",
    "required": [
     "loc",
     "msg",
     "type"
    ],
    "title": "ValidationError"
   }
  },
  "securitySchemes": {
   "bearer": {
    "type": "http",
    "scheme": "bearer",
    "description": "Your Skryp API key (wt_live_…)"
   }
  }
 }
}
