Spaces:
Paused
Paused
| { | |
| "openapi": "3.1.0", | |
| "info": { | |
| "title": "Vision-Scrape API", | |
| "description": "Extracts data from webpages using Playwright screenshotting and an AI Agent.", | |
| "version": "1.0.0" | |
| }, | |
| "paths": { | |
| "/health": { | |
| "get": { | |
| "summary": "Health Check", | |
| "operationId": "health_check_health_get", | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "/api/vision-scrape": { | |
| "post": { | |
| "summary": "Vision Scrape", | |
| "operationId": "vision_scrape_api_vision_scrape_post", | |
| "requestBody": { | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/ScrapeRequest" | |
| } | |
| } | |
| }, | |
| "required": true | |
| }, | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| }, | |
| "422": { | |
| "description": "Validation Error", | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/HTTPValidationError" | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "security": [ | |
| { | |
| "APIKeyHeader": [] | |
| } | |
| ] | |
| } | |
| }, | |
| "/api/crawl": { | |
| "post": { | |
| "summary": "Api Crawl", | |
| "operationId": "api_crawl_api_crawl_post", | |
| "requestBody": { | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/CrawlRequest" | |
| } | |
| } | |
| }, | |
| "required": true | |
| }, | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| }, | |
| "422": { | |
| "description": "Validation Error", | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/HTTPValidationError" | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "security": [ | |
| { | |
| "APIKeyHeader": [] | |
| } | |
| ] | |
| } | |
| }, | |
| "/api/watch": { | |
| "post": { | |
| "summary": "Create Watch", | |
| "operationId": "create_watch_api_watch_post", | |
| "requestBody": { | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/WatchRequest" | |
| } | |
| } | |
| }, | |
| "required": true | |
| }, | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| }, | |
| "422": { | |
| "description": "Validation Error", | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/HTTPValidationError" | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "security": [ | |
| { | |
| "APIKeyHeader": [] | |
| } | |
| ] | |
| } | |
| }, | |
| "/api/watch/{watch_id}/diff": { | |
| "get": { | |
| "summary": "Get Watch Diff", | |
| "operationId": "get_watch_diff_api_watch__watch_id__diff_get", | |
| "security": [ | |
| { | |
| "APIKeyHeader": [] | |
| } | |
| ], | |
| "parameters": [ | |
| { | |
| "name": "watch_id", | |
| "in": "path", | |
| "required": true, | |
| "schema": { | |
| "type": "string", | |
| "title": "Watch Id" | |
| } | |
| } | |
| ], | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| }, | |
| "422": { | |
| "description": "Validation Error", | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/HTTPValidationError" | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "/api/watch/{watch_id}": { | |
| "delete": { | |
| "summary": "Delete Watch", | |
| "operationId": "delete_watch_api_watch__watch_id__delete", | |
| "security": [ | |
| { | |
| "APIKeyHeader": [] | |
| } | |
| ], | |
| "parameters": [ | |
| { | |
| "name": "watch_id", | |
| "in": "path", | |
| "required": true, | |
| "schema": { | |
| "type": "string", | |
| "title": "Watch Id" | |
| } | |
| } | |
| ], | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| }, | |
| "422": { | |
| "description": "Validation Error", | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/HTTPValidationError" | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "/api/batch": { | |
| "post": { | |
| "summary": "Api Batch", | |
| "operationId": "api_batch_api_batch_post", | |
| "requestBody": { | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/BatchRequest" | |
| } | |
| } | |
| }, | |
| "required": true | |
| }, | |
| "responses": { | |
| "200": { | |
| "description": "Successful Response", | |
| "content": { | |
| "application/json": { | |
| "schema": {} | |
| } | |
| } | |
| }, | |
| "422": { | |
| "description": "Validation Error", | |
| "content": { | |
| "application/json": { | |
| "schema": { | |
| "$ref": "#/components/schemas/HTTPValidationError" | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "security": [ | |
| { | |
| "APIKeyHeader": [] | |
| } | |
| ] | |
| } | |
| } | |
| }, | |
| "components": { | |
| "schemas": { | |
| "BatchItem": { | |
| "properties": { | |
| "target_url": { | |
| "type": "string", | |
| "title": "Target Url" | |
| }, | |
| "extraction_query": { | |
| "type": "string", | |
| "title": "Extraction Query" | |
| }, | |
| "viewport_width": { | |
| "type": "integer", | |
| "title": "Viewport Width", | |
| "default": 1280 | |
| }, | |
| "viewport_height": { | |
| "type": "integer", | |
| "title": "Viewport Height", | |
| "default": 800 | |
| }, | |
| "wait_until": { | |
| "type": "string", | |
| "title": "Wait Until", | |
| "default": "networkidle" | |
| }, | |
| "timeout": { | |
| "type": "integer", | |
| "title": "Timeout", | |
| "default": 30000 | |
| }, | |
| "response_schema": { | |
| "additionalProperties": true, | |
| "type": "object", | |
| "title": "Response Schema" | |
| }, | |
| "login": { | |
| "$ref": "#/components/schemas/LoginInfo" | |
| } | |
| }, | |
| "type": "object", | |
| "required": [ | |
| "target_url", | |
| "extraction_query" | |
| ], | |
| "title": "BatchItem" | |
| }, | |
| "BatchRequest": { | |
| "properties": { | |
| "requests": { | |
| "items": { | |
| "$ref": "#/components/schemas/BatchItem" | |
| }, | |
| "type": "array", | |
| "title": "Requests" | |
| } | |
| }, | |
| "type": "object", | |
| "required": [ | |
| "requests" | |
| ], | |
| "title": "BatchRequest" | |
| }, | |
| "CrawlRequest": { | |
| "properties": { | |
| "start_url": { | |
| "type": "string", | |
| "title": "Start Url" | |
| }, | |
| "extraction_query": { | |
| "type": "string", | |
| "title": "Extraction Query" | |
| }, | |
| "follow_selector": { | |
| "type": "string", | |
| "title": "Follow Selector" | |
| }, | |
| "max_pages": { | |
| "type": "integer", | |
| "title": "Max Pages", | |
| "default": 5 | |
| }, | |
| "viewport_width": { | |
| "type": "integer", | |
| "title": "Viewport Width", | |
| "default": 1280 | |
| }, | |
| "viewport_height": { | |
| "type": "integer", | |
| "title": "Viewport Height", | |
| "default": 800 | |
| }, | |
| "wait_until": { | |
| "type": "string", | |
| "title": "Wait Until", | |
| "default": "networkidle" | |
| }, | |
| "timeout": { | |
| "type": "integer", | |
| "title": "Timeout", | |
| "default": 30000 | |
| }, | |
| "response_schema": { | |
| "additionalProperties": true, | |
| "type": "object", | |
| "title": "Response Schema" | |
| } | |
| }, | |
| "type": "object", | |
| "required": [ | |
| "start_url", | |
| "extraction_query", | |
| "follow_selector" | |
| ], | |
| "title": "CrawlRequest" | |
| }, | |
| "HTTPValidationError": { | |
| "properties": { | |
| "detail": { | |
| "items": { | |
| "$ref": "#/components/schemas/ValidationError" | |
| }, | |
| "type": "array", | |
| "title": "Detail" | |
| } | |
| }, | |
| "type": "object", | |
| "title": "HTTPValidationError" | |
| }, | |
| "LoginInfo": { | |
| "properties": { | |
| "login_url": { | |
| "type": "string", | |
| "title": "Login Url" | |
| }, | |
| "username_field": { | |
| "type": "string", | |
| "title": "Username Field" | |
| }, | |
| "password_field": { | |
| "type": "string", | |
| "title": "Password Field" | |
| }, | |
| "username": { | |
| "type": "string", | |
| "title": "Username" | |
| }, | |
| "password": { | |
| "type": "string", | |
| "title": "Password" | |
| }, | |
| "submit_button": { | |
| "type": "string", | |
| "title": "Submit Button" | |
| } | |
| }, | |
| "type": "object", | |
| "required": [ | |
| "login_url", | |
| "username_field", | |
| "password_field", | |
| "username", | |
| "password" | |
| ], | |
| "title": "LoginInfo" | |
| }, | |
| "ScrapeRequest": { | |
| "properties": { | |
| "target_url": { | |
| "type": "string", | |
| "title": "Target Url" | |
| }, | |
| "extraction_query": { | |
| "type": "string", | |
| "title": "Extraction Query" | |
| }, | |
| "viewport_width": { | |
| "type": "integer", | |
| "title": "Viewport Width", | |
| "default": 1280 | |
| }, | |
| "viewport_height": { | |
| "type": "integer", | |
| "title": "Viewport Height", | |
| "default": 800 | |
| }, | |
| "wait_until": { | |
| "type": "string", | |
| "title": "Wait Until", | |
| "default": "networkidle" | |
| }, | |
| "timeout": { | |
| "type": "integer", | |
| "title": "Timeout", | |
| "default": 30000 | |
| }, | |
| "response_schema": { | |
| "additionalProperties": true, | |
| "type": "object", | |
| "title": "Response Schema" | |
| }, | |
| "login": { | |
| "$ref": "#/components/schemas/LoginInfo" | |
| } | |
| }, | |
| "type": "object", | |
| "required": [ | |
| "target_url", | |
| "extraction_query" | |
| ], | |
| "title": "ScrapeRequest" | |
| }, | |
| "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" | |
| }, | |
| "WatchRequest": { | |
| "properties": { | |
| "target_url": { | |
| "type": "string", | |
| "title": "Target Url" | |
| }, | |
| "extraction_query": { | |
| "type": "string", | |
| "title": "Extraction Query" | |
| }, | |
| "viewport_width": { | |
| "type": "integer", | |
| "title": "Viewport Width", | |
| "default": 1280 | |
| }, | |
| "viewport_height": { | |
| "type": "integer", | |
| "title": "Viewport Height", | |
| "default": 800 | |
| }, | |
| "wait_until": { | |
| "type": "string", | |
| "title": "Wait Until", | |
| "default": "networkidle" | |
| }, | |
| "timeout": { | |
| "type": "integer", | |
| "title": "Timeout", | |
| "default": 30000 | |
| }, | |
| "response_schema": { | |
| "additionalProperties": true, | |
| "type": "object", | |
| "title": "Response Schema" | |
| } | |
| }, | |
| "type": "object", | |
| "required": [ | |
| "target_url", | |
| "extraction_query" | |
| ], | |
| "title": "WatchRequest" | |
| } | |
| }, | |
| "securitySchemes": { | |
| "APIKeyHeader": { | |
| "type": "apiKey", | |
| "in": "header", | |
| "name": "X-API-Key" | |
| } | |
| } | |
| } | |
| } |