{"openapi":"3.1.0","info":{"title":"S-SHOT Templates API","version":"1.0.0","description":"Public S-SHOT Templates API facade for template discovery, template runs, rows, datasets, and CSV export downloads."},"servers":[{"url":"https://www.s-shot.ru/v1"}],"security":[{"bearerAuth":[]}],"paths":{"/templates":{"get":{"operationId":"listTemplates","summary":"List curated S-SHOT templates","security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Template list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateList"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/templates/{template_id}":{"get":{"operationId":"getTemplate","summary":"Get template detail","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/TemplateId"}],"responses":{"200":{"description":"Template detail","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Template"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/templates/{template_id}/preview":{"get":{"operationId":"previewTemplate","summary":"Read published template preview rows","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/TemplateId"}],"responses":{"200":{"description":"Template preview","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplatePreview"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/template-runs":{"post":{"operationId":"createTemplateRun","summary":"Create a template run","security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Required for create/billable creation endpoints to prevent duplicate work on retries."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTemplateRunRequest"}}}},"responses":{"202":{"description":"Template run accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRun"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/template-runs/{run_id}":{"get":{"operationId":"getTemplateRun","summary":"Get template run status","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/RunId"}],"responses":{"200":{"description":"Template run","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRun"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/template-runs/{run_id}/rows":{"get":{"operationId":"getTemplateRunRows","summary":"Read rows directly from a template run","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/RunId"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500,"default":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Rows page","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RowPage"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/template-runs/{run_id}/cancel":{"post":{"operationId":"cancelTemplateRun","summary":"Cancel a cancellable template run","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/RunId"}],"responses":{"200":{"description":"Updated template run","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRun"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/template-runs/{run_id}/resume":{"post":{"operationId":"resumeTemplateRun","summary":"Resume a supported partial template run","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/RunId"}],"responses":{"200":{"description":"Existing continuation template run","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRun"}}}},"202":{"description":"Continuation template run","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRun"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/template-runs/{run_id}/diagnostics":{"get":{"operationId":"getTemplateRunDiagnostics","summary":"Read safe template run diagnostics","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/RunId"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500,"default":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Diagnostics","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRunDiagnostics"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/datasets/{dataset_id}":{"get":{"operationId":"getDataset","summary":"Get dataset metadata","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/DatasetId"}],"responses":{"200":{"description":"Dataset","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Dataset"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/datasets/{dataset_id}/rows":{"get":{"operationId":"getDatasetRows","summary":"Read dataset rows","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/DatasetId"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500,"default":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Rows page","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RowPage"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/datasets/{dataset_id}/exports":{"post":{"operationId":"exportDatasetCsv","summary":"Create an immediate CSV export download for an owned private dataset","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/DatasetId"},{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Required for create/billable creation endpoints to prevent duplicate work on retries."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetExportRequest"}}}},"responses":{"200":{"description":"CSV export download","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetExportDownload"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}},"/datasets/exports/{download_token}":{"get":{"operationId":"downloadDatasetCsvExport","summary":"Download CSV export bytes through the authenticated public facade","security":[{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/DownloadToken"}],"responses":{"200":{"description":"CSV bytes","content":{"text/csv":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"401":{"description":"Authentication required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Quota exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Resource not found or unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"409":{"description":"Operation conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"502":{"description":"Upstream service unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"504":{"description":"Upstream service timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"ws_ API key"}},"parameters":{"TemplateId":{"name":"template_id","in":"path","required":true,"schema":{"type":"string"}},"RunId":{"name":"run_id","in":"path","required":true,"schema":{"type":"string"}},"DatasetId":{"name":"dataset_id","in":"path","required":true,"schema":{"type":"string"}},"DownloadToken":{"name":"download_token","in":"path","required":true,"schema":{"type":"string"}}},"schemas":{"ErrorEnvelope":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","request_id","details"],"properties":{"code":{"type":"string","enum":["authentication_required","permission_denied","idempotency_key_required","idempotency_key_conflict","template_not_found","template_not_runnable","template_parameter_invalid","template_limit_exceeded","template_run_not_found","template_run_not_cancellable","template_run_not_resumable","dataset_not_found","dataset_export_unavailable","quota_exceeded","rate_limited","upstream_timeout","service_unavailable","internal_error"]},"message":{"type":"string"},"request_id":{"type":"string"},"details":{"type":"array","items":{}}}}}},"TemplateList":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Template"}}}},"Template":{"type":"object","required":["id","name","description"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"parameter_schema":{"type":"array","items":{"type":"object"}},"output_schema":{"type":"array","items":{"type":"object"}},"limits":{"type":"object"},"updated_at":{"type":["string","null"],"format":"date-time"}},"additionalProperties":true},"TemplatePreview":{"type":"object","required":["rows"],"properties":{"template_id":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true}},"row_count":{"type":"integer"},"published_at":{"type":["string","null"],"format":"date-time"}},"additionalProperties":true},"CreateTemplateRunRequest":{"type":"object","required":["template_id","parameters"],"properties":{"template_id":{"type":"string"},"parameters":{"type":"object","additionalProperties":true},"max_pages":{"type":"integer","minimum":1},"dataset_name":{"type":"string"}},"additionalProperties":true},"TemplateRun":{"type":"object","required":["id","status","status_url","rows_url"],"properties":{"id":{"type":"string"},"template_id":{"type":"string"},"dataset_id":{"type":"string"},"status":{"type":"string","enum":["queued","running","cancelling","cancelled","completed","completed_partial","failed"]},"progress":{"$ref":"#/components/schemas/TemplateRunProgress"},"created_at":{"type":"string","format":"date-time"},"finished_at":{"type":["string","null"],"format":"date-time"},"status_url":{"type":"string"},"rows_url":{"type":"string"},"error":{"type":"object","properties":{"code":{"type":"string"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"additionalProperties":true},"resume":{"type":"object","additionalProperties":true}},"additionalProperties":true},"TemplateRunProgress":{"type":"object","properties":{"max_pages":{"type":"integer"},"pages_attempted":{"type":"integer"},"pages_succeeded":{"type":"integer"},"rows_extracted":{"type":"integer"},"phase":{"type":"string"}},"additionalProperties":true},"RowPage":{"type":"object","required":["items","next_cursor"],"properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":true}},"next_cursor":{"type":["string","null"]},"total":{"type":["integer","null"]}}},"TemplateRunDiagnostics":{"type":"object","properties":{"pages":{"type":"array","items":{"type":"object","additionalProperties":true}},"errors":{"type":"array","items":{"type":"object","additionalProperties":true}},"events":{"type":"array","items":{"type":"object","additionalProperties":true}},"next_cursor":{"type":["string","null"]}},"additionalProperties":true},"Dataset":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"visibility":{"type":"string","enum":["private","team","public_preview","public_utility"]},"schema":{"type":"array","items":{"type":"object"}},"export_available":{"type":"boolean"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"additionalProperties":true},"CreateDatasetExportRequest":{"type":"object","required":["format"],"properties":{"format":{"type":"string","enum":["csv"]}}},"DatasetExportDownload":{"type":"object","required":["format","download_url","expires_at"],"properties":{"format":{"type":"string","enum":["csv"]},"download_url":{"type":"string","pattern":"^/v1/datasets/exports/"},"expires_at":{"type":["string","null"],"format":"date-time"}}}},"examples":{"CreateTemplateRunRequest":{"value":{"template_id":"ozon-search-listings","parameters":{"url":"https://www.ozon.ru/search/?text=coffee"},"max_pages":5,"dataset_name":"Ozon coffee search"}},"TemplateRun":{"value":{"id":"trun_01HY...","template_id":"ozon-search-listings","status":"queued","dataset_id":"ds_01HY...","created_at":"2026-05-23T10:00:00Z","status_url":"/v1/template-runs/trun_01HY...","rows_url":"/v1/template-runs/trun_01HY.../rows"}},"DatasetExportDownload":{"value":{"format":"csv","download_url":"/v1/datasets/exports/dlexp_01HY...","expires_at":"2026-05-23T11:00:00Z"}},"ErrorEnvelope":{"value":{"error":{"code":"idempotency_key_required","message":"Idempotency-Key is required for template run creation.","request_id":"req_01HY...","details":[]}}}}}}