{"openapi":"3.1.0","info":{"title":"Aidentika Public API","description":"API для генерации продуктовых фото, карточек, видео и работы с AI-помощниками.","version":"1.0.0"},"paths":{"/api/v1/public/upload":{"post":{"tags":["Public API","Public API - Generation"],"summary":"Upload Image","description":"Upload an image for reuse across multiple generation requests.\nReturns an upload_id valid for 1 hour. Use it in place of base64 data\nin generation requests by passing {\"upload_id\": \"...\"} instead of {\"data\": \"...\"}.","operationId":"upload_image_api_v1_public_upload_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadImageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadImageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/generate/photo":{"post":{"tags":["Public API","Public API - Generation"],"summary":"Generate Photo","description":"Generate styled product photo(s) from reference images.","operationId":"generate_photo_api_v1_public_generate_photo_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GeneratePhotoRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__generate__GenerateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/generate/card":{"post":{"tags":["Public API","Public API - Generation"],"summary":"Generate Card","description":"Generate product infographic card.","operationId":"generate_card_api_v1_public_generate_card_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateCardRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__generate__GenerateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/generate/video":{"post":{"tags":["Public API","Public API - Generation"],"summary":"Generate Video","description":"Generate video from a source image using AI.","operationId":"generate_video_api_v1_public_generate_video_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateVideoRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__generate__GenerateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/edit/{action_id}":{"post":{"tags":["Public API","Public API - Generation"],"summary":"Edit Image","description":"Edit an existing generated image by text instruction.","operationId":"edit_image_api_v1_public_edit__action_id__post","parameters":[{"name":"action_id","in":"path","required":true,"schema":{"type":"integer","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EditRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__generate__EditResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/status/{action_id}":{"get":{"tags":["Public API","Public API - Status"],"summary":"Get Status","description":"Poll the status of a generation/edit/video action.\nReturns result URL when completed.","operationId":"get_status_api_v1_public_status__action_id__get","parameters":[{"name":"action_id","in":"path","required":true,"schema":{"type":"integer","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/cancel/{action_id}":{"post":{"tags":["Public API","Public API - Status"],"summary":"Cancel Action","description":"Cancel a pending/queued action. Only works if the action hasn't started processing yet.\nIf the generation is already in progress, cancellation is best-effort.\nTokens held for cancelled actions are released automatically.","operationId":"cancel_action_api_v1_public_cancel__action_id__post","parameters":[{"name":"action_id","in":"path","required":true,"schema":{"type":"integer","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/results/{action_id}/download":{"get":{"tags":["Public API","Public API - Status"],"summary":"Download Result","description":"Download the result of a completed action.\nRedirects to the signed asset URL.\nReturns status message if the action is not yet completed.","operationId":"download_result_api_v1_public_results__action_id__download_get","parameters":[{"name":"action_id","in":"path","required":true,"schema":{"type":"integer","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/balance":{"get":{"tags":["Public API","Public API - Info"],"summary":"Get Balance","description":"Get current token balance.","operationId":"get_balance_api_v1_public_balance_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__info__BalanceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/pricing":{"get":{"tags":["Public API","Public API - Info"],"summary":"Get Pricing","description":"Get current token pricing for all operations.","operationId":"get_pricing_api_v1_public_pricing_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__info__PricingResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/categories":{"get":{"tags":["Public API","Public API - Info"],"summary":"Get Categories","description":"Get all product categories with their shooting concepts.\n\nResponse is cached for 24 hours (categories never change).","operationId":"get_categories_api_v1_public_categories_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoriesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/wishes/suggest":{"post":{"tags":["Public API","Public API - AI Helpers"],"summary":"Suggest Wishes","description":"Generate marketing text suggestion from product photos.","operationId":"suggest_wishes_api_v1_public_wishes_suggest_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WishesSuggestRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__wishes__WishesSuggestResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/video/suggest-scenario":{"post":{"tags":["Public API","Public API - AI Helpers"],"summary":"Suggest Video Scenario","description":"Generate AI-suggested video scenario for a product image.","operationId":"suggest_video_scenario_api_v1_public_video_suggest_scenario_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VideoScenarioRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VideoScenarioResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/helpers/usage":{"get":{"tags":["Public API","Public API - AI Helpers"],"summary":"Get Helpers Usage","description":"Get current daily AI helper usage for the API key owner.","operationId":"get_helpers_usage_api_v1_public_helpers_usage_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HelpersUsageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/webhooks":{"post":{"tags":["Public API","Public API - Webhooks"],"summary":"Create Webhook Endpoint","description":"Register a webhook to receive event notifications.","operationId":"create_webhook_endpoint_api_v1_public_webhooks_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Public API","Public API - Webhooks"],"summary":"List Webhooks Endpoint","description":"List all registered webhooks (no secrets shown).","operationId":"list_webhooks_endpoint_api_v1_public_webhooks_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/webhooks/{webhook_id}":{"delete":{"tags":["Public API","Public API - Webhooks"],"summary":"Delete Webhook Endpoint","description":"Delete a webhook.","operationId":"delete_webhook_endpoint_api_v1_public_webhooks__webhook_id__delete","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"integer","title":"Webhook Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookDeleteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/results":{"get":{"tags":["Public API","Public API - Results"],"summary":"List Results","description":"List your past generation results with pagination.\n\nReturns fresh signed URLs for completed results (valid 30 days).\nUse GET /status/{action_id} to get a fresh URL for any individual result.","operationId":"list_results_api_v1_public_results_get","parameters":[{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(generate|edit|video)$"},{"type":"null"}],"description":"Filter by type","title":"Type"},"description":"Filter by type"},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(pending|processing|completed|failed)$"},{"type":"null"}],"title":"Status"}},{"name":"created_after","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"description":"YYYY-MM-DD","title":"Created After"},"description":"YYYY-MM-DD"},{"name":"created_before","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"description":"YYYY-MM-DD","title":"Created Before"},"description":"YYYY-MM-DD"},{"name":"project_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Show only results that belong to this project","title":"Project Id"},"description":"Show only results that belong to this project"},{"name":"client_group_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"description":"Filter by correlation tag sent on generate","title":"Client Group Id"},"description":"Filter by correlation tag sent on generate"},{"name":"page","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Page Size"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResultsListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/analyze":{"post":{"tags":["Public API","Public API - Analysis"],"summary":"Analyze Product","description":"Analyze product image to auto-detect category, name, and key qualities.\n\nFree (no spark cost). Useful for pre-filling generation parameters.","operationId":"analyze_product_api_v1_public_analyze_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalyzeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalyzeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/projects":{"post":{"tags":["Public API","Public API - Projects"],"summary":"Create Project","description":"Create an empty Project. Returns the project_id you can pass to generate calls.","operationId":"create_project_api_v1_public_projects_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__projects__CreateProjectRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectSummary"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Public API","Public API - Projects"],"summary":"List Projects","description":"Paginated list of Projects created via the public API.","operationId":"list_projects_api_v1_public_projects_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by source. Accepts 'api', 'api_inbox', or 'all'. Default — both API sources.","title":"Source"},"description":"Filter by source. Accepts 'api', 'api_inbox', or 'all'. Default — both API sources."},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/projects/{project_id}":{"get":{"tags":["Public API","Public API - Projects"],"summary":"Get Project Detail","description":"Return the project together with all its Cards and Actions.","operationId":"get_project_detail_api_v1_public_projects__project_id__get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectDetailResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Public API","Public API - Projects"],"summary":"Update Project","description":"Update project metadata. Fields left unset stay unchanged.","operationId":"update_project_api_v1_public_projects__project_id__patch","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"integer","title":"Project Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__projects__UpdateProjectRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectSummary"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/cards/{card_id}":{"get":{"tags":["Public API","Public API - Cards"],"summary":"Get Card Detail","operationId":"get_card_detail_api_v1_public_cards__card_id__get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"integer","title":"Card Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__cards__CardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Public API","Public API - Cards"],"summary":"Move Card","description":"Move a Card to a different Project owned by the same user.","operationId":"move_card_api_v1_public_cards__card_id__patch","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"integer","title":"Card Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveCardRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/routes__public__cards__CardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/funnels":{"post":{"tags":["Public API","Public API - Funnels"],"summary":"Start Session","description":"Step 1: upload photos, recognize product, return facts + questions.","operationId":"start_session_api_v1_public_funnels_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/funnels/{funnel_id}/idea":{"post":{"tags":["Public API","Public API - Funnels"],"summary":"Post Idea","description":"Step 2 (optional, repeatable): generate one idea and append to pool.","operationId":"post_idea_api_v1_public_funnels__funnel_id__idea_post","parameters":[{"name":"funnel_id","in":"path","required":true,"schema":{"type":"integer","title":"Funnel Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdeaResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/funnels/{funnel_id}/setup":{"post":{"tags":["Public API","Public API - Funnels"],"summary":"Post Setup","description":"Step 3 (optional): aspect, style, resolution, design/model/env refs.","operationId":"post_setup_api_v1_public_funnels__funnel_id__setup_post","parameters":[{"name":"funnel_id","in":"path","required":true,"schema":{"type":"integer","title":"Funnel Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetupRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetupResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/funnels/{funnel_id}/generate":{"post":{"tags":["Public API","Public API - Funnels"],"summary":"Generate From Session","description":"Step 4: generate one card; accepts survey answers + idea selection.","operationId":"generate_from_session_api_v1_public_funnels__funnel_id__generate_post","parameters":[{"name":"funnel_id","in":"path","required":true,"schema":{"type":"integer","title":"Funnel Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/GenerateSessionRequest"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/public/funnels/{funnel_id}":{"get":{"tags":["Public API","Public API - Funnels"],"summary":"Get Session Status","description":"Session aggregate: product, questions, idea pool, setup, result_url.","operationId":"get_session_status_api_v1_public_funnels__funnel_id__get","parameters":[{"name":"funnel_id","in":"path","required":true,"schema":{"type":"integer","title":"Funnel Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/jobs/generate":{"post":{"tags":["Public API v2 - Jobs"],"summary":"Create Generate Job","operationId":"create_generate_job_api_v2_jobs_generate_post","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GeneratePhotoRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateJobResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/jobs/edit":{"post":{"tags":["Public API v2 - Jobs"],"summary":"Create Edit Job","operationId":"create_edit_job_api_v2_jobs_edit_post","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EditJobRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateJobResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/jobs/{job_id}":{"get":{"tags":["Public API v2 - Jobs"],"summary":"Get Job Status","operationId":"get_job_status_api_v2_jobs__job_id__get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/jobs/{job_id}/cancel":{"post":{"tags":["Public API v2 - Jobs"],"summary":"Cancel Job","operationId":"cancel_job_api_v2_jobs__job_id__cancel_post","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelJobResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/jobs/{job_id}/result":{"get":{"tags":["Public API v2 - Jobs"],"summary":"Get Job Result","operationId":"get_job_result_api_v2_jobs__job_id__result_get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"ActionResponse":{"properties":{"id":{"type":"integer","title":"Id"},"type":{"type":"string","title":"Type"},"depth":{"type":"integer","title":"Depth"},"parent_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Action Id"},"instruction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instruction"},"status":{"type":"string","title":"Status","default":"pending"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"created_at":{"type":"string","title":"Created At"},"image_base64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Image Base64"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Image Url"},"thumb_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thumb Url"},"rating":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rating"}},"type":"object","required":["id","type","depth","created_at"],"title":"ActionResponse"},"ActionStatusResponse":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"status":{"type":"string","title":"Status"},"type":{"type":"string","title":"Type"},"result_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url"},"result_url_expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url Expires At"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"}},"type":"object","required":["action_id","status","type"],"title":"ActionStatusResponse"},"ActionSummary":{"properties":{"id":{"type":"integer","title":"Id"},"card_id":{"type":"integer","title":"Card Id"},"type":{"type":"string","title":"Type"},"status":{"type":"string","title":"Status"},"depth":{"type":"integer","title":"Depth","default":0},"parent_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Action Id"},"asset_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Asset Path"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"}},"type":"object","required":["id","card_id","type","status"],"title":"ActionSummary"},"ActiveCampaignItem":{"properties":{"code":{"type":"string","title":"Code"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"toast_title":{"type":"string","title":"Toast Title"},"toast_message":{"type":"string","title":"Toast Message"},"toast_emoji":{"type":"string","title":"Toast Emoji"},"discount_percent":{"type":"integer","title":"Discount Percent"},"valid_until":{"type":"string","title":"Valid Until"}},"type":"object","required":["code","toast_title","toast_message","toast_emoji","discount_percent","valid_until"],"title":"ActiveCampaignItem"},"ActiveCampaignsResponse":{"properties":{"campaigns":{"items":{"$ref":"#/components/schemas/ActiveCampaignItem"},"type":"array","title":"Campaigns"}},"type":"object","required":["campaigns"],"title":"ActiveCampaignsResponse"},"ActivePersonalPromoResponse":{"properties":{"active":{"type":"boolean","title":"Active","description":"Есть ли действующая личная скидка"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code","description":"Код, подставляемый на оплате"},"valid_until":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Valid Until","description":"Когда сгорит, ISO"},"discount_percent":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Discount Percent","description":"Ставка скидки"}},"type":"object","required":["active"],"title":"ActivePersonalPromoResponse","description":"Личная скидка, действующая прямо сейчас, — или её отсутствие."},"AnalyzeImageRequest":{"properties":{"image_base64":{"type":"string","title":"Image Base64"},"type":{"type":"string","title":"Type","default":"model"}},"type":"object","required":["image_base64"],"title":"AnalyzeImageRequest"},"AnalyzeRequest":{"properties":{"image":{"$ref":"#/components/schemas/ImageInput","description":"Product image to analyze"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"Output language (ru/en/es)"}},"type":"object","required":["image"],"title":"AnalyzeRequest"},"AnalyzeResponse":{"properties":{"category_id":{"type":"string","title":"Category Id"},"product_name":{"type":"string","title":"Product Name"},"qualities":{"items":{"type":"string"},"type":"array","title":"Qualities"}},"type":"object","required":["category_id","product_name","qualities"],"title":"AnalyzeResponse"},"AnimateRequest":{"properties":{"card_id":{"type":"integer","title":"Card Id"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale"}},"type":"object","required":["card_id"],"title":"AnimateRequest"},"AnimateResponse":{"properties":{"video_card_id":{"type":"integer","title":"Video Card Id"},"action_id":{"type":"integer","title":"Action Id"}},"type":"object","required":["video_card_id","action_id"],"title":"AnimateResponse"},"Body_analyze_product_api_v1_projects_analyze_product_post":{"properties":{"image":{"type":"string","contentMediaType":"application/octet-stream","title":"Image","description":"Product image to analyze"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for output name/qualities"}},"type":"object","required":["image"],"title":"Body_analyze_product_api_v1_projects_analyze_product_post"},"Body_choose_ab_test_variant_api_v1_projects_ab_test__ab_test_id__choose_post":{"properties":{"variant":{"type":"string","title":"Variant","description":"Chosen variant: 'a' or 'b'"}},"type":"object","required":["variant"],"title":"Body_choose_ab_test_variant_api_v1_projects_ab_test__ab_test_id__choose_post"},"Body_edit_card_image_api_v1_projects__project_id__cards__card_id__edit_post":{"properties":{"source_action_id":{"type":"integer","title":"Source Action Id","description":"Source action ID to edit from"},"instruction":{"type":"string","maxLength":1000,"title":"Instruction","description":"Edit instruction"}},"type":"object","required":["source_action_id","instruction"],"title":"Body_edit_card_image_api_v1_projects__project_id__cards__card_id__edit_post"},"Body_finalize_video_quiz_api_v1_projects__project_id__video_quiz_finalize_post":{"properties":{"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id","description":"Card ID with image to analyze"},"reference_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Id","description":"Reference ID with image to analyze"},"answers":{"type":"string","title":"Answers","description":"JSON-encoded list of {question, chosen_option}"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es)"}},"type":"object","required":["answers"],"title":"Body_finalize_video_quiz_api_v1_projects__project_id__video_quiz_finalize_post"},"Body_generate_replace_api_v1_replace_generate_post":{"properties":{"product_photo":{"type":"string","contentMediaType":"application/octet-stream","title":"Product Photo","description":"User's product photo"},"reference_project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Project Id","description":"Project whose latest card preview is used as the REFERENCE scene"},"reference_template_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reference Template Id","description":"Custom uploaded template to use as the REFERENCE scene"},"user_request":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"User Request","description":"Optional point-edit instruction (USER_REQUEST)"},"freedom":{"type":"string","title":"Freedom","description":"How far the card may drift from the template: copy (default) | adapt | inspire","default":"adapt"},"aspect_ratio":{"type":"string","title":"Aspect Ratio","description":"Output aspect ratio; defaults to the template-card format","default":"3:4"},"resolution":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resolution","description":"Output resolution: 1K, 2K (default), 4K. Affects sparks cost, same table as /projects/generate"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id","description":"Existing replace project to add this result to as another card"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Idempotency Key","description":"Client-generated key for this attempt. Repeating it replays the stored result instead of generating (and charging) again."}},"type":"object","required":["product_photo"],"title":"Body_generate_replace_api_v1_replace_generate_post"},"Body_generate_video_api_v1_projects__project_id__video_generate_post":{"properties":{"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id","description":"Source card ID (image to use as base)"},"reference_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Id","description":"Source reference ID (user-uploaded image)"},"scenario":{"type":"string","maxLength":1500,"title":"Scenario","description":"Video scenario description","default":""},"duration":{"type":"integer","title":"Duration","description":"Video duration in seconds (5 or 10)","default":5},"loop_mode":{"type":"boolean","title":"Loop Mode","description":"Make video seamless by reusing the first frame as the last","default":false},"card_mode":{"type":"boolean","title":"Card Mode","description":"Card mode: static camera, preserve text/infographics","default":false},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for video text guard"},"final_frame":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Final Frame","description":"Custom final frame image for video (ignored when loop_mode is on)"}},"type":"object","title":"Body_generate_video_api_v1_projects__project_id__video_generate_post"},"Body_generate_with_project_api_v1_projects_generate_post":{"properties":{"prompt":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Prompt","description":"Generation prompt (optional; if omitted, built server-side from category_id + concept_id)"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id","description":"Existing project ID to reuse"},"source_action_id":{"anyOf":[{"type":"integer","exclusiveMinimum":0.0},{"type":"null"}],"title":"Source Action Id","description":"Immutable action/version selected as the generated photo base"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name","description":"Product name"},"product_appearance":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Product Appearance","description":"How the product is built and which details identify it — one sentence from the vision analysis the browser already paid for. Stored on the project, so later generations of the same project keep it."},"category_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Category Id","description":"Category ID"},"concept_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Concept Id","description":"Concept ID"},"comment":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Comment","description":"User wishes/comment"},"draft_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Draft Id","description":"Draft/session ID for pre-generation wishes"},"user_text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"User Text","description":"User text for card/infographic (optional)"},"card_scene":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Card Scene","description":"Funnel environment/scene: world, product role and any explicit composition. The final image prompt treats it as the sole placement authority."},"forbidden_text":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Forbidden Text","description":"Funnel: words/facts already on OTHER cards of the set — must NOT be printed on this card (smart per-card negative)."},"design_key":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Design Key","description":"Design key for style reuse (optional)"},"creativity":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Creativity","description":"Creativity level (0-1): 0=exact copy, 1=free interpretation","default":0.5},"card_style":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Card Style","description":"Card style: infographic (default, design-reference) or cinematic (direct prompt). Legacy aliases commercial/wow and classic/premium are accepted."},"variant_count":{"anyOf":[{"type":"integer","maximum":10.0,"minimum":1.0},{"type":"null"}],"title":"Variant Count","description":"Number of variants in this generation batch"},"photo_style":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Photo Style","description":"Photo style: classic or home"},"aspect_ratio":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"title":"Aspect Ratio","description":"Aspect ratio: 9:16, 4:3, 1:1, 16:9, 3:4","default":"3:4"},"resolution":{"anyOf":[{"type":"string","maxLength":4},{"type":"null"}],"title":"Resolution","description":"Output resolution: 1K, 2K (default), 4K. 1K and 2K use the base generation price; 4K costs 2 additional sparks."},"references":{"items":{"type":"string","contentMediaType":"application/octet-stream"},"type":"array","title":"References","description":"Reference images","default":[]},"reference_ids":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Reference Ids","description":"Comma-separated IDs of product photos already stored in this project. Reuse them by ID instead of re-uploading the same bytes on every generation."},"design_reference":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Design Reference","description":"Design reference image for card/infographic generation"},"model_photo":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Model Photo","description":"Model photo reference for photo generation (person appearance)"},"environment_photo":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Environment Photo","description":"Environment photo reference for photo generation (background/scene)"},"model_library_item_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Library Item Id","description":"Library item ID to use as model photo (UUID)"},"model_library_version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Library Version Id","description":"Library version ID — if set, load this version's asset instead of parent item"},"environment_library_item_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment Library Item Id","description":"Library item ID to use as environment photo (UUID)"},"environment_library_version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment Library Version Id","description":"Library version ID — if set, load this version's asset instead of parent item"},"test_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Test Error","description":"Dev: simulate error (content_policy|timeout|unavailable)"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for LLM output"},"prebuilt_prompt":{"type":"boolean","title":"Prebuilt Prompt","description":"Use `prompt` verbatim. Incompatible with a funnel visual design reference because that reference must be extracted and removed before rendering.","default":false},"is_hero":{"type":"boolean","title":"Is Hero","description":"Funnel: this slot is the hero card (routes via surface card.funnel.hero — own model + fallback, switchable without deploy).","default":false}},"type":"object","title":"Body_generate_with_project_api_v1_projects_generate_post"},"Body_get_quiz_api_v1_wishes_quiz_post":{"properties":{"category_id":{"type":"string","title":"Category Id"},"concept_id":{"type":"string","title":"Concept Id"},"concept_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Prompt"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"draft_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Draft Id"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es)"},"references":{"items":{"type":"string","contentMediaType":"application/octet-stream"},"type":"array","title":"References","default":[]}},"type":"object","required":["category_id","concept_id"],"title":"Body_get_quiz_api_v1_wishes_quiz_post"},"Body_get_video_quiz_api_v1_projects__project_id__video_quiz_post":{"properties":{"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id","description":"Card ID with image to analyze"},"reference_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Id","description":"Reference ID with image to analyze"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es)"}},"type":"object","title":"Body_get_video_quiz_api_v1_projects__project_id__video_quiz_post"},"Body_suggest_card_text_api_v1_projects__project_id__card_text_suggest_post":{"properties":{"reference_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Id","description":"Project reference image to analyze"},"auto":{"type":"boolean","title":"Auto","description":"Whether this is the one-shot automatic card-mode suggestion","default":true},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for output text"}},"type":"object","title":"Body_suggest_card_text_api_v1_projects__project_id__card_text_suggest_post"},"Body_suggest_card_text_public_api_v1_projects_card_text_suggest_public_post":{"properties":{"references":{"items":{"type":"string","contentMediaType":"application/octet-stream"},"type":"array","title":"References","default":[]},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for output text"}},"type":"object","title":"Body_suggest_card_text_public_api_v1_projects_card_text_suggest_public_post"},"Body_suggest_video_scenario_api_v1_projects__project_id__video_suggest_scenario_post":{"properties":{"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id","description":"Card ID with image to analyze"},"reference_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Id","description":"Reference ID with image to analyze"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for scenario text"}},"type":"object","title":"Body_suggest_video_scenario_api_v1_projects__project_id__video_suggest_scenario_post"},"Body_suggest_wishes_api_v1_wishes_suggest_post":{"properties":{"category_id":{"type":"string","title":"Category Id"},"concept_id":{"type":"string","title":"Concept Id"},"concept_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Prompt"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"draft_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Draft Id"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es)"},"references":{"items":{"type":"string","contentMediaType":"application/octet-stream"},"type":"array","title":"References","default":[]}},"type":"object","required":["category_id","concept_id"],"title":"Body_suggest_wishes_api_v1_wishes_suggest_post"},"Body_upload_item_api_v1_library_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File","description":"Image file to upload"},"type":{"type":"string","title":"Type","description":"Item type: 'model' or 'environment'"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label","description":"Optional label"}},"type":"object","required":["file","type"],"title":"Body_upload_item_api_v1_library_post"},"Body_upload_project_reference_api_v1_projects__project_id__references_post":{"properties":{"reference":{"type":"string","contentMediaType":"application/octet-stream","title":"Reference","description":"Reference image to upload"}},"type":"object","required":["reference"],"title":"Body_upload_project_reference_api_v1_projects__project_id__references_post"},"Body_upload_replace_template_api_v1_replace_templates_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File","description":"Reference-scene image to save as a reusable template"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label","description":"Optional label"}},"type":"object","required":["file"],"title":"Body_upload_replace_template_api_v1_replace_templates_post"},"BrowseProjectItem":{"properties":{"id":{"type":"integer","title":"Id"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"article":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags","default":[]},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"mode":{"type":"string","title":"Mode","default":"standard"},"source":{"type":"string","title":"Source","default":"web"},"funnel_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Funnel Id"},"folder_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Folder Id"},"folder_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Folder Name"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id"},"owner_display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner Display Name"},"images_count":{"type":"integer","title":"Images Count","default":0},"cards_count":{"type":"integer","title":"Cards Count","default":0},"videos_count":{"type":"integer","title":"Videos Count","default":0},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"},"preview_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Url"},"preview_medium_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Medium Url"},"retention_deleted_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retention Deleted At"},"retention_delete_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retention Delete Reason"}},"type":"object","required":["id","created_at","updated_at"],"title":"BrowseProjectItem"},"BrowseProjectsResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/BrowseProjectItem"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"page":{"type":"integer","title":"Page"},"page_size":{"type":"integer","title":"Page Size"},"has_more":{"type":"boolean","title":"Has More"},"available_tags":{"items":{"type":"string"},"type":"array","title":"Available Tags","default":[]},"available_categories":{"items":{"type":"string"},"type":"array","title":"Available Categories","default":[]},"folders":{"items":{"$ref":"#/components/schemas/FolderItem"},"type":"array","title":"Folders","default":[]}},"type":"object","required":["items","total","page","page_size","has_more"],"title":"BrowseProjectsResponse"},"BulkActionRequest":{"properties":{"action":{"type":"string","enum":["delete","add_tags","remove_tags","move_to_folder"],"title":"Action"},"project_ids":{"items":{"type":"integer"},"type":"array","title":"Project Ids"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"folder_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Folder Id"}},"type":"object","required":["action","project_ids"],"title":"BulkActionRequest"},"BulkActionResponse":{"properties":{"affected":{"type":"integer","title":"Affected"}},"type":"object","required":["affected"],"title":"BulkActionResponse"},"CancelJobResponse":{"properties":{"job_id":{"type":"string","title":"Job Id"},"status":{"type":"string","title":"Status"},"cancelled":{"type":"boolean","title":"Cancelled"},"message":{"type":"string","title":"Message"}},"type":"object","required":["job_id","status","cancelled","message"],"title":"CancelJobResponse"},"CancelResponse":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"cancelled":{"type":"boolean","title":"Cancelled"},"message":{"type":"string","title":"Message"}},"type":"object","required":["action_id","cancelled","message"],"title":"CancelResponse"},"CardActionSummary":{"properties":{"id":{"type":"integer","title":"Id"},"type":{"type":"string","title":"Type"},"status":{"type":"string","title":"Status"},"depth":{"type":"integer","title":"Depth","default":0},"parent_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Action Id"},"asset_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Asset Path"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"}},"type":"object","required":["id","type","status"],"title":"CardActionSummary"},"CardGenerateRequest":{"properties":{"form_patch":{"anyOf":[{"$ref":"#/components/schemas/FunnelFormPatch"},{"type":"null"}]},"card_text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Card Text"}},"additionalProperties":false,"type":"object","title":"CardGenerateRequest"},"CardGenerateResponse":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"card_id":{"type":"integer","title":"Card Id"},"status":{"type":"string","title":"Status"},"estimated_duration_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Estimated Duration Sec"}},"type":"object","required":["action_id","card_id","status"],"title":"CardGenerateResponse"},"CardIdeaOut":{"properties":{"idea_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idea Id"},"idea":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idea"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"scene":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scene"}},"type":"object","title":"CardIdeaOut"},"CardSummary":{"properties":{"id":{"type":"integer","title":"Id"},"status":{"type":"string","title":"Status"},"content_type":{"type":"string","title":"Content Type","default":"photo"},"aspect_ratio":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Aspect Ratio"},"active_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Active Action Id"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","status"],"title":"CardSummary"},"CardTextSnapshot":{"properties":{"card_id":{"type":"integer","title":"Card Id"},"text":{"type":"string","maxLength":5000,"title":"Text"}},"type":"object","required":["card_id","text"],"title":"CardTextSnapshot"},"CardTextSuggestionResponse":{"properties":{"text":{"type":"string","title":"Text"},"qualities":{"items":{"type":"string"},"type":"array","title":"Qualities"},"auto_ran":{"type":"boolean","title":"Auto Ran","default":false},"skipped":{"type":"boolean","title":"Skipped","default":false}},"type":"object","required":["text","qualities"],"title":"CardTextSuggestionResponse","description":"Response for lazy marketplace-card text suggestion."},"CategoriesResponse":{"properties":{"categories":{"items":{"$ref":"#/components/schemas/CategoryItem"},"type":"array","title":"Categories"}},"type":"object","required":["categories"],"title":"CategoriesResponse"},"CategoryItem":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"concepts":{"items":{"$ref":"#/components/schemas/ConceptItem"},"type":"array","title":"Concepts"}},"type":"object","required":["id","name","concepts"],"title":"CategoryItem"},"ChatwootIdentityResponse":{"properties":{"identifier":{"type":"string","title":"Identifier"},"identifier_hash":{"type":"string","title":"Identifier Hash"},"name":{"type":"string","title":"Name"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar Url"},"account_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Code"}},"type":"object","required":["identifier","identifier_hash","name"],"title":"ChatwootIdentityResponse","description":"Trusted profile fields that the website widget may send to Chatwoot."},"CheckoutRedirectRequest":{"properties":{"order_id":{"type":"integer","title":"Order Id"}},"type":"object","required":["order_id"],"title":"CheckoutRedirectRequest"},"ClaimCRMRewardRequest":{"properties":{"token":{"type":"string","maxLength":128,"minLength":20,"title":"Token"}},"type":"object","required":["token"],"title":"ClaimCRMRewardRequest"},"ClaimFirstDislikeBonusResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether bonus was successfully claimed"},"new_balance":{"type":"integer","title":"New Balance","description":"New token balance after bonus"},"bonus_amount":{"type":"integer","title":"Bonus Amount","description":"Amount of bonus tokens granted (5)"}},"type":"object","required":["success","new_balance","bonus_amount"],"title":"ClaimFirstDislikeBonusResponse"},"ClaimRequest":{"properties":{"code":{"type":"string","maxLength":32,"minLength":1,"title":"Code"}},"type":"object","required":["code"],"title":"ClaimRequest"},"ClaimResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"granted":{"type":"integer","title":"Granted"},"balance":{"type":"integer","title":"Balance"}},"type":"object","required":["success","granted","balance"],"title":"ClaimResponse"},"ClaimTelegramSubscriptionBonusResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"False only on replay (already recorded by an earlier call)"},"new_balance":{"type":"integer","title":"New Balance","description":"Current token balance after this call"},"bonus_amount":{"type":"integer","title":"Bonus Amount","description":"Sparks granted by this call (20 for sparks_*, 0 for no_sparks)"}},"type":"object","required":["success","new_balance","bonus_amount"],"title":"ClaimTelegramSubscriptionBonusResponse"},"ConceptItem":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"}},"type":"object","required":["id","name"],"title":"ConceptItem"},"ConfirmResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"balance":{"type":"integer","title":"Balance"}},"type":"object","required":["success","balance"],"title":"ConfirmResponse","description":"Response for hold confirmation."},"CreateFolderRequest":{"properties":{"name":{"type":"string","maxLength":255,"title":"Name"},"color":{"anyOf":[{"type":"string","maxLength":30},{"type":"null"}],"title":"Color"}},"type":"object","required":["name"],"title":"CreateFolderRequest"},"CreateFunnelCardBody":{"properties":{"role":{"type":"string","enum":["hero","dependent"],"title":"Role","default":"dependent"},"idea_slot_id":{"anyOf":[{"type":"integer","maximum":50.0,"minimum":0.0},{"type":"null"}],"title":"Idea Slot Id"},"idea":{"type":"string","maxLength":500,"title":"Idea","default":""},"text":{"type":"string","maxLength":5000,"title":"Text","default":""},"scene":{"type":"string","maxLength":2000,"title":"Scene","default":""},"ordinal":{"type":"integer","maximum":100.0,"minimum":0.0,"title":"Ordinal","default":0},"aspect_ratio":{"type":"string","enum":["9:16","4:3","1:1","16:9","3:4"],"title":"Aspect Ratio","default":"3:4"}},"additionalProperties":false,"type":"object","title":"CreateFunnelCardBody"},"CreateFunnelRequest":{"properties":{"form":{"anyOf":[{"$ref":"#/components/schemas/FunnelFormPatch"},{"type":"null"}],"description":"Начальная форма (snapshot/опрос/слайдеры/фильтры)"}},"type":"object","title":"CreateFunnelRequest"},"CreateFunnelResponse":{"properties":{"funnel_id":{"type":"integer","title":"Funnel Id"},"project_id":{"type":"integer","title":"Project Id"}},"type":"object","required":["funnel_id","project_id"],"title":"CreateFunnelResponse"},"CreateJobResponse":{"properties":{"job_id":{"type":"string","title":"Job Id"},"status":{"type":"string","title":"Status"},"type":{"type":"string","title":"Type"},"status_url":{"type":"string","title":"Status Url"},"cancel_url":{"type":"string","title":"Cancel Url"},"result_url":{"type":"string","title":"Result Url"},"resource_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Resource Id"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":20}},"type":"object","required":["job_id","status","type","status_url","cancel_url","result_url"],"title":"CreateJobResponse"},"CreateProjectResponse":{"properties":{"project_id":{"type":"integer","title":"Project Id"}},"type":"object","required":["project_id"],"title":"CreateProjectResponse"},"CreateTemporaryPromoResponse":{"properties":{"code":{"type":"string","title":"Code","description":"Temporary promo code"},"valid_until":{"type":"string","title":"Valid Until","description":"ISO timestamp when promo expires"},"discount_percent":{"type":"integer","title":"Discount Percent","description":"Discount percentage (10)"}},"type":"object","required":["code","valid_until","discount_percent"],"title":"CreateTemporaryPromoResponse"},"DebugPromptResponse":{"properties":{"action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Action Id"},"prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prompt"},"prompt_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prompt Sha256"},"built":{"type":"boolean","title":"Built","default":false}},"type":"object","title":"DebugPromptResponse","description":"Финальный image-промпт карточки для dev-инспекции. built=false, пока воркер\nего не записал (генерация ещё идёт / не запускалась)."},"DeleteAccountRequest":{"properties":{"confirmation_code":{"type":"string","title":"Confirmation Code"}},"type":"object","required":["confirmation_code"],"title":"DeleteAccountRequest"},"DesignKeyCheckResponse":{"properties":{"exists":{"type":"boolean","title":"Exists"},"key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Key"},"usage_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Usage Count"}},"type":"object","required":["exists"],"title":"DesignKeyCheckResponse","description":"Response for design key check endpoint."},"DetailAnswer":{"properties":{"question_id":{"type":"integer","maximum":50.0,"minimum":0.0,"title":"Question Id"},"answer":{"type":"string","maxLength":2000,"title":"Answer"},"nevermind":{"type":"boolean","title":"Nevermind","default":false}},"type":"object","required":["question_id","answer"],"title":"DetailAnswer"},"DetectedFields":{"properties":{"category_id":{"type":"string","title":"Category Id"},"concept_id":{"type":"string","title":"Concept Id"},"product_name":{"type":"string","title":"Product Name"}},"type":"object","required":["category_id","concept_id","product_name"],"title":"DetectedFields"},"DuplicateProjectResponse":{"properties":{"project_id":{"type":"integer","title":"Project Id"}},"type":"object","required":["project_id"],"title":"DuplicateProjectResponse"},"EditJobRequest":{"properties":{"instruction":{"type":"string","maxLength":1000,"title":"Instruction","description":"Edit instruction text"},"webhook_url":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Webhook Url"},"client_group_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Client Group Id","description":"Arbitrary correlation tag echoed back in /results and webhook payloads."},"action_id":{"type":"integer","title":"Action Id","description":"Completed source action to edit"}},"type":"object","required":["instruction","action_id"],"title":"EditJobRequest"},"EditRequest":{"properties":{"instruction":{"type":"string","maxLength":1000,"title":"Instruction","description":"Edit instruction text"},"webhook_url":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Webhook Url"},"client_group_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Client Group Id","description":"Arbitrary correlation tag echoed back in /results and webhook payloads."}},"type":"object","required":["instruction"],"title":"EditRequest"},"FolderItem":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"color":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Color"},"project_count":{"type":"integer","title":"Project Count","default":0}},"type":"object","required":["id","name"],"title":"FolderItem"},"FolderResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"color":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Color"},"project_count":{"type":"integer","title":"Project Count","default":0},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["id","name","created_at","updated_at"],"title":"FolderResponse"},"FunnelArchiveSizeResponse":{"properties":{"size_bytes":{"type":"integer","title":"Size Bytes"}},"type":"object","required":["size_bytes"],"title":"FunnelArchiveSizeResponse"},"FunnelAssetOut":{"properties":{"id":{"type":"integer","title":"Id"},"kind":{"type":"string","title":"Kind"},"ordinal":{"type":"integer","title":"Ordinal"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"}},"type":"object","required":["id","kind","ordinal"],"title":"FunnelAssetOut"},"FunnelAssetRequest":{"properties":{"image":{"$ref":"#/components/schemas/ImageInput"},"ordinal":{"type":"integer","maximum":5.0,"minimum":0.0,"title":"Ordinal","default":0},"kind":{"type":"string","enum":["product_photo","design_ref"],"title":"Kind","description":"product_photo | design_ref","default":"product_photo"},"mutation_seq":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Mutation Seq"}},"type":"object","required":["image"],"title":"FunnelAssetRequest"},"FunnelCardOut":{"properties":{"id":{"type":"integer","title":"Id"},"role":{"type":"string","title":"Role"},"idea_slot_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Idea Slot Id"},"idea":{"type":"string","title":"Idea"},"text":{"type":"string","title":"Text"},"scene":{"type":"string","title":"Scene"},"editable_brief":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Editable Brief"},"status":{"type":"string","title":"Status"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Action Id"},"ordinal":{"type":"integer","title":"Ordinal"},"aspect_ratio":{"type":"string","enum":["9:16","4:3","1:1","16:9","3:4"],"title":"Aspect Ratio","default":"3:4"},"design_base_funnel_card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Design Base Funnel Card Id"},"idea_regenerating":{"type":"boolean","title":"Idea Regenerating","default":false},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"estimated_duration_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Estimated Duration Sec"}},"type":"object","required":["id","role","idea","text","scene","status","ordinal"],"title":"FunnelCardOut","description":"Материализованная карточка (новая модель). role='hero'|'dependent'."},"FunnelCardStatusOut":{"properties":{"id":{"type":"integer","title":"Id"},"status":{"type":"string","title":"Status"},"idea_regenerating":{"type":"boolean","title":"Idea Regenerating","default":false}},"type":"object","required":["id","status"],"title":"FunnelCardStatusOut","description":"Лёгкая проекция карточки для поллинга — только статусы, без текстов/URL."},"FunnelFeedbackRequest":{"properties":{"rating":{"type":"integer","maximum":5.0,"minimum":1.0,"title":"Rating"},"comment":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Comment"}},"type":"object","required":["rating"],"title":"FunnelFeedbackRequest"},"FunnelFeedbackStatusResponse":{"properties":{"submitted":{"type":"boolean","title":"Submitted"},"rating":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rating"}},"type":"object","required":["submitted"],"title":"FunnelFeedbackStatusResponse"},"FunnelFeedbackSubmitResponse":{"properties":{"submitted":{"type":"boolean","title":"Submitted"},"rating":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rating"},"created":{"type":"boolean","title":"Created"}},"type":"object","required":["submitted","created"],"title":"FunnelFeedbackSubmitResponse"},"FunnelFormPatch":{"properties":{"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Category Id"},"search_name":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Search Name"},"theses":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":30},{"type":"null"}],"title":"Theses"},"survey_questions":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":20},{"type":"null"}],"title":"Survey Questions"},"survey_answers":{"anyOf":[{"additionalProperties":true,"type":"object"},{"items":{},"type":"array"},{"type":"null"}],"title":"Survey Answers"},"known_facts":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Known Facts"},"removed_facts":{"anyOf":[{"items":{"type":"integer"},"type":"array","maxItems":100},{"type":"null"}],"title":"Removed Facts"},"wishes":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Wishes"},"wishes_placeholder":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Wishes Placeholder"},"aspect_ratio":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Aspect Ratio"},"resolution":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Resolution"},"photo_style":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Photo Style"},"card_style":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Card Style"},"creativity":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Creativity"},"model_library_item_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Model Library Item Id"},"model_library_version_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Model Library Version Id"},"environment_library_item_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Environment Library Item Id"},"environment_library_version_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Environment Library Version Id"},"snapshot":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Snapshot"},"locale":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Locale"},"ephemeral_mini_funnel":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Ephemeral Mini Funnel"}},"additionalProperties":false,"type":"object","title":"FunnelFormPatch","description":"Client-writable funnel form. Internal Stage1 directives are not writable."},"FunnelStateResponse":{"properties":{"id":{"type":"integer","title":"Id"},"status":{"type":"string","title":"Status"},"stage1_status":{"type":"string","title":"Stage1 Status"},"stage1_phase":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage1 Phase"},"stage1_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage1 Error"},"stage2_status":{"type":"string","title":"Stage2 Status"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"estimated_scenario_duration_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Estimated Scenario Duration Sec"},"version":{"type":"integer","title":"Version"},"snapshot_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Hash"},"form":{"additionalProperties":true,"type":"object","title":"Form"},"scenarios":{"items":{"$ref":"#/components/schemas/ScenarioOut"},"type":"array","title":"Scenarios"},"assets":{"items":{"$ref":"#/components/schemas/FunnelAssetOut"},"type":"array","title":"Assets"},"project":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Project","description":"Вложенный project payload (формат /projects/{id})"},"funnel_cards":{"items":{"$ref":"#/components/schemas/FunnelCardOut"},"type":"array","title":"Funnel Cards"},"selected_hero_funnel_card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Selected Hero Funnel Card Id"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["id","status","stage1_status","stage2_status","version","form","scenarios","assets","updated_at"],"title":"FunnelStateResponse"},"FunnelStatusResponse":{"properties":{"stage1_status":{"type":"string","title":"Stage1 Status"},"stage1_phase":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage1 Phase"},"stage1_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage1 Error"},"version":{"type":"integer","title":"Version"},"selected_hero_funnel_card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Selected Hero Funnel Card Id"},"cards":{"items":{"$ref":"#/components/schemas/FunnelCardStatusOut"},"type":"array","title":"Cards"}},"type":"object","required":["stage1_status","version","cards"],"title":"FunnelStatusResponse"},"GenerateAllRequest":{"properties":{"card_ids":{"anyOf":[{"items":{"type":"integer"},"type":"array","maxItems":10},{"type":"null"}],"title":"Card Ids"},"form_patch":{"anyOf":[{"$ref":"#/components/schemas/FunnelFormPatch"},{"type":"null"}]},"card_texts":{"anyOf":[{"items":{"$ref":"#/components/schemas/CardTextSnapshot"},"type":"array","maxItems":10},{"type":"null"}],"title":"Card Texts"}},"additionalProperties":false,"type":"object","title":"GenerateAllRequest","description":"Явный состав запуска (money-path): фронт шлёт id включённых карточек, которые\nюзер видел в цене на кнопке. Сервер запускает ПЕРЕСЕЧЕНИЕ этого списка со своим\nфактическим набором (idle/failed + непустой текст) — списание никогда\nне превышает показанное. None/пустое тело (старый клиент) — прежнее поведение:\nвсе подходящие."},"GenerateAllResponse":{"properties":{"launched":{"items":{"type":"integer"},"type":"array","title":"Launched"},"skipped":{"items":{"type":"integer"},"type":"array","title":"Skipped","default":[]},"stopped_insufficient_funds":{"type":"boolean","title":"Stopped Insufficient Funds","default":false},"estimated_duration_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Estimated Duration Sec"}},"type":"object","required":["launched"],"title":"GenerateAllResponse"},"GenerateCardRequest":{"properties":{"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id","description":"Append the generated Card to an existing Project. If omitted, the destination is decided by the API key's default_grouping (new keys default to a per-key 'API Inbox' project)."},"client_group_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Client Group Id","description":"Arbitrary correlation tag echoed back in /results and webhook payloads. Does not group on the server side."},"images":{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":5,"minItems":1,"title":"Images","description":"Product reference images"},"category_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Category Id","description":"Omit for auto-detection from images"},"concept_id":{"type":"string","maxLength":50,"title":"Concept Id","default":"infographic"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"user_text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"User Text","description":"What to highlight on the card"},"design_key":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Design Key","description":"Reuse a design style by key"},"creativity":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Creativity","description":"0=exact copy, 1=free interpretation","default":0.5},"design_reference_image":{"anyOf":[{"$ref":"#/components/schemas/ImageInput"},{"type":"null"}],"description":"Style reference image"},"aspect_ratio":{"type":"string","title":"Aspect Ratio","default":"3:4"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for auto-detected name/qualities + any on-image text"},"webhook_url":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Webhook Url"},"style":{"type":"string","enum":["infographic","cinematic","classic","premium"],"title":"Style","description":"Card generation style. 'infographic' (marketplace card) adapts a design reference — auto-selected or provided via design_key / design_reference_image — and renders text, icons and callouts. 'cinematic' uses a direct cinematic prompt without design references and is incompatible with design_key / design_reference_image.","default":"infographic"}},"type":"object","required":["images"],"title":"GenerateCardRequest"},"GenerateLibraryItemRequest":{"properties":{"instruction":{"type":"string","title":"Instruction"},"type":{"type":"string","title":"Type"}},"type":"object","required":["instruction","type"],"title":"GenerateLibraryItemRequest"},"GeneratePhotoRequest":{"properties":{"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id","description":"Append the generated Card to an existing Project. If omitted, the destination is decided by the API key's default_grouping (new keys default to a per-key 'API Inbox' project)."},"client_group_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Client Group Id","description":"Arbitrary correlation tag echoed back in /results and webhook payloads. Does not group on the server side."},"images":{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":5,"minItems":1,"title":"Images","description":"Product reference images"},"category_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Category Id","description":"Omit for auto-detection from images"},"concept_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Concept Id","description":"Omit to use default concept for category"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"comment":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Comment","description":"User wishes/additional description"},"photo_style":{"type":"string","title":"Photo Style","description":"'classic' or 'home'","default":"classic"},"aspect_ratio":{"type":"string","title":"Aspect Ratio","description":"9:16, 4:3, 1:1, 16:9, or 3:4","default":"3:4"},"resolution":{"type":"string","title":"Resolution","description":"Output resolution: 1K, 2K (default), or 4K. 1K and 2K use the base generation price; 4K costs 2 additional sparks.","default":"2K"},"webhook_url":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Webhook Url","description":"Ad-hoc webhook URL for this request"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"UI locale (ru/en/es) for auto-detected name/qualities + any on-image text"}},"type":"object","required":["images"],"title":"GeneratePhotoRequest"},"GenerateSessionRequest":{"properties":{"answers":{"anyOf":[{"items":{"$ref":"#/components/schemas/DetailAnswer"},"type":"array","maxItems":20},{"type":"null"}],"title":"Answers"},"idea_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Idea Id"},"idea":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Idea"},"text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Text"},"wishes":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Wishes"}},"type":"object","title":"GenerateSessionRequest"},"GenerateSessionResponse":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"status":{"type":"string","title":"Status","default":"pending"},"poll_url":{"type":"string","title":"Poll Url"},"funnel_id":{"type":"integer","title":"Funnel Id"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":20}},"type":"object","required":["action_id","poll_url","funnel_id"],"title":"GenerateSessionResponse"},"GenerateVideoRequest":{"properties":{"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id","description":"Append the generated Card to an existing Project. If omitted, the destination is decided by the API key's default_grouping (new keys default to a per-key 'API Inbox' project)."},"client_group_id":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Client Group Id","description":"Arbitrary correlation tag echoed back in /results and webhook payloads. Does not group on the server side."},"image":{"$ref":"#/components/schemas/ImageInput","description":"Source image to animate"},"scenario":{"type":"string","maxLength":1500,"title":"Scenario","description":"Video motion description","default":""},"duration_sec":{"type":"integer","title":"Duration Sec","description":"5 or 10 seconds","default":5},"loop_mode":{"type":"boolean","title":"Loop Mode","description":"Seamless loop video","default":false},"card_mode":{"type":"boolean","title":"Card Mode","description":"Static camera, preserve text/infographics","default":false},"final_frame":{"anyOf":[{"$ref":"#/components/schemas/ImageInput"},{"type":"null"}],"description":"Custom final frame (ignored if loop_mode)"},"aspect_ratio":{"type":"string","title":"Aspect Ratio","default":"3:4"},"webhook_url":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Webhook Url"}},"type":"object","required":["image"],"title":"GenerateVideoRequest"},"GenerationStatsResponse":{"properties":{"cards":{"type":"integer","title":"Cards","default":0},"images":{"type":"integer","title":"Images","default":0},"photos":{"type":"integer","title":"Photos","default":0},"videos":{"type":"integer","title":"Videos","default":0}},"type":"object","title":"GenerationStatsResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HelpersUsageResponse":{"properties":{"used_today":{"type":"integer","title":"Used Today"},"free_limit":{"type":"integer","title":"Free Limit"},"free_remaining":{"type":"integer","title":"Free Remaining"},"paid_rate":{"type":"string","title":"Paid Rate"}},"type":"object","required":["used_today","free_limit","free_remaining","paid_rate"],"title":"HelpersUsageResponse"},"HeroVariantBody":{"properties":{"idea_slot_id":{"anyOf":[{"type":"integer","maximum":50.0,"minimum":0.0},{"type":"null"}],"title":"Idea Slot Id","default":0},"idea":{"type":"string","maxLength":500,"title":"Idea","default":""},"text":{"type":"string","maxLength":5000,"title":"Text","default":""},"scene":{"type":"string","maxLength":2000,"title":"Scene","default":""},"aspect_ratio":{"type":"string","enum":["9:16","4:3","1:1","16:9","3:4"],"title":"Aspect Ratio","default":"3:4"}},"additionalProperties":false,"type":"object","title":"HeroVariantBody"},"HoldRequest":{"properties":{"hold_id":{"type":"string","title":"Hold Id","description":"Unique ID for idempotency (UUID recommended)"},"amount":{"type":"integer","exclusiveMinimum":0.0,"title":"Amount","description":"Number of tokens to reserve"},"reason":{"type":"string","title":"Reason","description":"Reason: generation, video_generation, improvement"},"ttl_seconds":{"anyOf":[{"type":"integer","maximum":900.0,"minimum":30.0},{"type":"null"}],"title":"Ttl Seconds","description":"Time-to-live in seconds (default 5 min, max 15 min)","default":300},"reference_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reference Type","description":"Optional reference type: action, card"},"reference_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reference Id","description":"Optional reference ID for tracking"}},"type":"object","required":["hold_id","amount","reason"],"title":"HoldRequest","description":"Request body for creating a token hold."},"HoldResponse":{"properties":{"hold_id":{"type":"string","title":"Hold Id"},"amount":{"type":"integer","title":"Amount"},"status":{"type":"string","title":"Status"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"},"available_balance":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Available Balance"}},"type":"object","required":["hold_id","amount","status"],"title":"HoldResponse","description":"Response for hold creation."},"IdeaResponse":{"properties":{"idea_id":{"type":"string","title":"Idea Id"},"idea":{"type":"string","title":"Idea"},"text":{"type":"string","title":"Text"},"scene":{"type":"string","title":"Scene"},"pool_size":{"type":"integer","title":"Pool Size"},"next_steps":{"items":{"type":"string"},"type":"array","title":"Next Steps"}},"type":"object","required":["idea_id","idea","text","scene","pool_size"],"title":"IdeaResponse"},"ImageInput":{"properties":{"data":{"anyOf":[{"type":"string","maxLength":21000000},{"type":"null"}],"title":"Data","description":"Base64-encoded image bytes or upload_id (upl_...)"},"url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Url","description":"Public HTTPS URL of the image"},"media_type":{"type":"string","title":"Media Type","description":"MIME type hint (used with data)","default":"image/jpeg"}},"type":"object","title":"ImageInput","description":"Image input — provide ONE of:\n- `data`: base64-encoded image bytes or upload_id (upl_...)\n- `url`: public HTTPS URL to fetch the image from"},"ImproveLibraryItemRequest":{"properties":{"instruction":{"type":"string","title":"Instruction"},"source_version_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Version Url"}},"type":"object","required":["instruction"],"title":"ImproveLibraryItemRequest"},"IncomingInviteResponse":{"properties":{"invite_id":{"type":"string","title":"Invite Id"},"inviter_display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inviter Display Name"},"inviter_avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inviter Avatar Url"},"inviter_user_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inviter User Code"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["invite_id"],"title":"IncomingInviteResponse"},"IntakeQuestionOut":{"properties":{"question":{"type":"string","title":"Question"},"options":{"items":{"type":"string"},"type":"array","title":"Options"}},"type":"object","required":["question","options"],"title":"IntakeQuestionOut"},"IntakeRequest":{"properties":{"images":{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":6,"minItems":1,"title":"Images","description":"Product photos"},"num_questions":{"type":"integer","maximum":5.0,"minimum":1.0,"title":"Num Questions","description":"Survey size (always this many)","default":3},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"Output language (ru/en/es)"},"confirmed_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Confirmed Name"},"confirmed_category_id":{"anyOf":[{"type":"string","enum":["apparel","wearables","food","cosmetics","gadgets","home","other"]},{"type":"null"}],"title":"Confirmed Category Id"},"kept_facts":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Kept Facts"},"excluded_facts":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Excluded Facts"}},"type":"object","required":["images"],"title":"IntakeRequest"},"IntakeResponse":{"properties":{"name":{"type":"string","title":"Name"},"category_id":{"type":"string","title":"Category Id"},"search_name":{"type":"string","title":"Search Name","description":"Обобщённое имя ниши для поиска конкурентов (без бренда/модели)","default":""},"theses":{"items":{"type":"string"},"type":"array","title":"Theses"},"known_facts":{"items":{"type":"string"},"type":"array","title":"Known Facts","description":"Факты, видимые на фото (объём/состав/бренд) — префилл «известных фактов»"},"questions":{"items":{"$ref":"#/components/schemas/IntakeQuestionOut"},"type":"array","title":"Questions"},"placeholder_hints":{"items":{"type":"string"},"type":"array","title":"Placeholder Hints","description":"3 short gap-topic hints for the «Tell about the product» field placeholder"},"snapshot":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Snapshot","description":"ProductSnapshot — единый источник истины (ui/kb category, niche_key, search_name, snapshot_hash). Фронт хранит и шлёт обратно в warm-niche/card-set."}},"type":"object","required":["name","category_id","theses","questions"],"title":"IntakeResponse"},"InviteRequest":{"properties":{"user_code":{"type":"string","title":"User Code"}},"type":"object","required":["user_code"],"title":"InviteRequest"},"InviteResponse":{"properties":{"invite_id":{"type":"string","title":"Invite Id"},"invitee_user_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee User Code"},"status":{"type":"string","title":"Status"}},"type":"object","required":["invite_id","status"],"title":"InviteResponse"},"JobDeliveryMetricRequest":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"delivery_channel":{"type":"string","title":"Delivery Channel"},"content_type":{"type":"string","title":"Content Type"},"poll_attempts":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Poll Attempts"},"sse_connected":{"type":"boolean","title":"Sse Connected","default":false},"queue_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Queue Mode"}},"type":"object","required":["action_id","delivery_channel","content_type"],"title":"JobDeliveryMetricRequest"},"JobStatusResponse":{"properties":{"job_id":{"type":"string","title":"Job Id"},"type":{"type":"string","title":"Type"},"status":{"type":"string","title":"Status"},"phase":{"type":"string","title":"Phase"},"retryable":{"type":"boolean","title":"Retryable"},"error_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Code"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"result":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Result"},"resource_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Resource Id"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"started_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Started At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"},"check_again_in_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Check Again In Sec"}},"type":"object","required":["job_id","type","status","phase","retryable"],"title":"JobStatusResponse"},"LandingConfigResponse":{"properties":{"pricing":{"$ref":"#/components/schemas/LandingPricing"},"products":{"items":{"$ref":"#/components/schemas/LandingProduct"},"type":"array","title":"Products"},"trial_sparks":{"type":"integer","title":"Trial Sparks","default":6},"avg_generation_time_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Avg Generation Time Sec"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["pricing","products"],"title":"LandingConfigResponse"},"LandingPricing":{"properties":{"generation":{"type":"integer","minimum":0.0,"title":"Generation"},"video_generation":{"type":"integer","minimum":0.0,"title":"Video Generation"},"video_generation_5sec":{"type":"integer","minimum":0.0,"title":"Video Generation 5Sec"},"video_generation_10sec":{"type":"integer","minimum":0.0,"title":"Video Generation 10Sec"},"improvement":{"type":"integer","minimum":0.0,"title":"Improvement"},"currency":{"type":"string","title":"Currency","default":"sparks"}},"type":"object","required":["generation","video_generation","video_generation_5sec","video_generation_10sec","improvement"],"title":"LandingPricing"},"LandingProduct":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"price_kopeks":{"type":"integer","minimum":0.0,"title":"Price Kopeks"},"tokens_count":{"type":"integer","minimum":0.0,"title":"Tokens Count"},"first10_price_kopeks":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"First10 Price Kopeks"},"foreign_price_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Foreign Price Cents"}},"type":"object","required":["id","name","price_kopeks","tokens_count"],"title":"LandingProduct"},"LatestMetricResponse":{"properties":{"metric_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Metric Date"},"avg_generation_time_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Avg Generation Time Sec"},"source":{"type":"string","title":"Source"}},"type":"object","required":["source"],"title":"LatestMetricResponse"},"MeResponse":{"properties":{"authenticated":{"type":"boolean","title":"Authenticated"},"user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"User Id"},"user_uid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Uid"},"providers":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Providers","default":[]},"shared_balance_members":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Shared Balance Members","default":[]},"access_token_present":{"type":"boolean","title":"Access Token Present","default":false}},"type":"object","required":["authenticated"],"title":"MeResponse"},"MoveCardRequest":{"properties":{"project_id":{"type":"integer","title":"Project Id","description":"Destination project id (must belong to the same owner)"}},"type":"object","required":["project_id"],"title":"MoveCardRequest"},"MyPartnerCodeResponse":{"properties":{"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"discount_percent":{"type":"integer","title":"Discount Percent","default":0}},"type":"object","title":"MyPartnerCodeResponse"},"MyReferralCodeResponse":{"properties":{"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"bonus_percent":{"type":"integer","title":"Bonus Percent","default":10}},"type":"object","title":"MyReferralCodeResponse"},"OkResponse":{"properties":{"ok":{"type":"boolean","title":"Ok","default":true}},"type":"object","title":"OkResponse"},"OrderStatusResponse":{"properties":{"id":{"type":"integer","title":"Id"},"status":{"type":"string","title":"Status"}},"type":"object","required":["id","status"],"title":"OrderStatusResponse"},"PatchStateRequest":{"properties":{"form":{"$ref":"#/components/schemas/FunnelFormPatch","description":"Top-level ключи для shallow-merge в form"},"snapshot_hash":{"anyOf":[{"type":"string","maxLength":128},{"type":"null"}],"title":"Snapshot Hash"},"expected_version":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Expected Version"}},"type":"object","title":"PatchStateRequest"},"PatchStateResponse":{"properties":{"version":{"type":"integer","title":"Version"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["version","updated_at"],"title":"PatchStateResponse"},"PaymentEmailResponse":{"properties":{"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"}},"type":"object","title":"PaymentEmailResponse"},"PaymentProviderResponse":{"properties":{"provider":{"type":"string","title":"Provider"},"mode":{"type":"string","title":"Mode"},"robokassa_weight":{"type":"integer","title":"Robokassa Weight"},"foreign_provider":{"type":"string","title":"Foreign Provider"},"foreign_mode":{"type":"string","title":"Foreign Mode"},"stripe_weight":{"type":"integer","title":"Stripe Weight"}},"type":"object","required":["provider","mode","robokassa_weight","foreign_provider","foreign_mode","stripe_weight"],"title":"PaymentProviderResponse"},"PendingInviteResponse":{"properties":{"invite_id":{"type":"string","title":"Invite Id"},"invitee_user_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee User Code"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["invite_id"],"title":"PendingInviteResponse"},"ProdamusInitRequest":{"properties":{"product_id":{"type":"string","maxLength":64,"minLength":1,"title":"Product Id","description":"Product pack id, e.g. articles_1"},"email":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Email","description":"Customer email for receipt"},"promo_code":{"anyOf":[{"type":"string","maxLength":512},{"type":"null"}],"title":"Promo Code","description":"Optional promo or referral code"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":64,"minLength":16},{"type":"null"}],"title":"Idempotency Key"}},"type":"object","required":["product_id"],"title":"ProdamusInitRequest"},"ProdamusInitResponse":{"properties":{"order_id":{"type":"integer","title":"Order Id"},"amount_kopeks":{"type":"integer","title":"Amount Kopeks"},"payment_url":{"type":"string","title":"Payment Url"},"bonus_tokens":{"type":"integer","title":"Bonus Tokens","default":0}},"type":"object","required":["order_id","amount_kopeks","payment_url"],"title":"ProdamusInitResponse"},"ProductAnalysisResponse":{"properties":{"name":{"type":"string","title":"Name"},"category":{"type":"string","title":"Category"},"qualities":{"items":{"type":"string"},"type":"array","title":"Qualities"},"appearance":{"type":"string","title":"Appearance","default":""}},"type":"object","required":["name","category","qualities"],"title":"ProductAnalysisResponse","description":"Response for product analysis endpoint."},"ProductDto":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"price_kopeks":{"type":"integer","title":"Price Kopeks"},"tokens_count":{"type":"integer","title":"Tokens Count"},"first10_price_kopeks":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"First10 Price Kopeks"},"foreign_price_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Foreign Price Cents"},"is_hidden":{"type":"boolean","title":"Is Hidden","default":false}},"type":"object","required":["id","name","price_kopeks","tokens_count"],"title":"ProductDto"},"ProductOut":{"properties":{"name":{"type":"string","title":"Name"},"category_id":{"type":"string","title":"Category Id"},"known_facts":{"items":{"type":"string"},"type":"array","title":"Known Facts"}},"type":"object","required":["name","category_id"],"title":"ProductOut"},"ProjectDetailResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"},"source":{"type":"string","title":"Source","default":"api"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"},"cards":{"items":{"$ref":"#/components/schemas/CardSummary"},"type":"array","title":"Cards"},"actions":{"items":{"$ref":"#/components/schemas/ActionSummary"},"type":"array","title":"Actions"}},"type":"object","required":["id","cards","actions"],"title":"ProjectDetailResponse"},"ProjectListResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ProjectSummary"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"limit":{"type":"integer","title":"Limit"},"offset":{"type":"integer","title":"Offset"}},"type":"object","required":["items","total","limit","offset"],"title":"ProjectListResponse"},"ProjectReferenceItem":{"properties":{"id":{"type":"integer","title":"Id"},"filename":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Filename"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mime Type"},"created_at":{"type":"string","title":"Created At"},"thumb_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thumb Url"},"preview_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Url"},"file_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Url"}},"type":"object","required":["id","created_at"],"title":"ProjectReferenceItem"},"ProjectResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"},"created_at":{"type":"string","title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"},"cards":{"items":{"$ref":"#/components/schemas/routes__projects___shared__CardResponse"},"type":"array","title":"Cards"},"images_used":{"type":"integer","title":"Images Used","default":0},"edits_used":{"type":"integer","title":"Edits Used","default":0},"model_library_item_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Library Item Id"},"model_library_version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Library Version Id"},"environment_library_item_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment Library Item Id"},"environment_library_version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment Library Version Id"},"card_text_suggestion_auto_ran":{"type":"boolean","title":"Card Text Suggestion Auto Ran","default":false},"card_text_draft":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Card Text Draft"},"mini_funnel":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Mini Funnel"},"replace_template_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Replace Template Id"}},"type":"object","required":["id","created_at","cards"],"title":"ProjectResponse"},"ProjectSummary":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"},"source":{"type":"string","title":"Source","default":"api"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id"],"title":"ProjectSummary"},"PromoValidateRequest":{"properties":{"code":{"type":"string","title":"Code","description":"Promo or referral code"},"product_id":{"type":"string","title":"Product Id","description":"Product ID to calculate bonus"}},"type":"object","required":["code","product_id"],"title":"PromoValidateRequest"},"PromoValidateResponse":{"properties":{"valid":{"type":"boolean","title":"Valid"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"},"value":{"type":"integer","title":"Value","default":0},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"bonus_tokens":{"type":"integer","title":"Bonus Tokens","default":0},"discount_kopeks":{"type":"integer","title":"Discount Kopeks","default":0},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Code"}},"type":"object","required":["valid"],"title":"PromoValidateResponse"},"PromoteFunnelResponse":{"properties":{"project_id":{"type":"integer","title":"Project Id"}},"type":"object","required":["project_id"],"title":"PromoteFunnelResponse"},"QuestionOut":{"properties":{"id":{"type":"integer","title":"Id"},"question":{"type":"string","title":"Question"},"options":{"items":{"type":"string"},"type":"array","title":"Options"}},"type":"object","required":["id","question"],"title":"QuestionOut"},"QuizFinalizeResponse":{"properties":{"text":{"type":"string","title":"Text"}},"type":"object","required":["text"],"title":"QuizFinalizeResponse"},"QuizQuestionResponse":{"properties":{"question":{"type":"string","title":"Question"},"options":{"items":{"type":"string"},"type":"array","maxItems":3,"minItems":3,"title":"Options"}},"type":"object","required":["question","options"],"title":"QuizQuestionResponse"},"RateActionRequest":{"properties":{"rating":{"type":"string","title":"Rating"}},"type":"object","required":["rating"],"title":"RateActionRequest"},"RatingResponse":{"properties":{"rating":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rating"}},"type":"object","title":"RatingResponse"},"RecommendCountsRequest":{"properties":{"category_id":{"type":"string","title":"Category Id","description":"UI category hint: apparel|wearables|food|cosmetics|gadgets|home|other","default":"other"},"product_name":{"type":"string","title":"Product Name","description":"Product name (sharpens category resolution)","default":""},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"User's product description"},"total":{"type":"integer","maximum":12.0,"minimum":2.0,"title":"Total","description":"Target total slides to split into cards + photos","default":6},"snapshot":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Snapshot","description":"ProductSnapshot из intake (единый источник; приоритетнее полей)."}},"type":"object","title":"RecommendCountsRequest"},"RecommendCountsResponse":{"properties":{"card_count":{"type":"integer","title":"Card Count"},"photo_count":{"type":"integer","title":"Photo Count"},"total":{"type":"integer","title":"Total"},"category_id":{"type":"string","title":"Category Id"},"subcategory_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Subcategory Id"},"density":{"type":"string","title":"Density"},"density_pct":{"type":"number","title":"Density Pct"},"kb_version":{"type":"string","title":"Kb Version"},"spark_costs":{"additionalProperties":true,"type":"object","title":"Spark Costs"}},"type":"object","required":["card_count","photo_count","total","category_id","density","density_pct","kb_version"],"title":"RecommendCountsResponse"},"ReferralCodeResponse":{"properties":{"code":{"type":"string","title":"Code"},"url":{"type":"string","title":"Url"}},"type":"object","required":["code","url"],"title":"ReferralCodeResponse"},"ReferralItem":{"properties":{"id":{"type":"integer","title":"Id"},"created_at":{"type":"string","title":"Created At"},"has_purchased":{"type":"boolean","title":"Has Purchased"},"tokens_earned":{"type":"integer","title":"Tokens Earned"}},"type":"object","required":["id","created_at","has_purchased","tokens_earned"],"title":"ReferralItem"},"ReferralStatsResponse":{"properties":{"code":{"type":"string","title":"Code"},"url":{"type":"string","title":"Url"},"bonus_percent":{"type":"integer","title":"Bonus Percent"},"total_referrals":{"type":"integer","title":"Total Referrals"},"total_tokens_earned":{"type":"integer","title":"Total Tokens Earned"},"referrals":{"items":{"$ref":"#/components/schemas/ReferralItem"},"type":"array","title":"Referrals"}},"type":"object","required":["code","url","bonus_percent","total_referrals","total_tokens_earned","referrals"],"title":"ReferralStatsResponse"},"RegenerateIdeaBody":{"properties":{"wish":{"type":"string","maxLength":2000,"title":"Wish","default":""}},"additionalProperties":false,"type":"object","title":"RegenerateIdeaBody","description":"Быстрая AI-идея: клиент передаёт только разовое пожелание."},"RelayTokenResponse":{"properties":{"access_token":{"type":"string","title":"Access Token"},"expires_in":{"type":"integer","title":"Expires In"},"token_type":{"type":"string","title":"Token Type","default":"bearer"}},"type":"object","required":["access_token","expires_in"],"title":"RelayTokenResponse"},"ReleaseResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"available_balance":{"type":"integer","title":"Available Balance"}},"type":"object","required":["success","available_balance"],"title":"ReleaseResponse","description":"Response for hold release."},"ReplaceGenerateResponse":{"properties":{"image_url":{"type":"string","title":"Image Url"},"download_url":{"type":"string","title":"Download Url"},"project_id":{"type":"integer","title":"Project Id"},"card_id":{"type":"integer","title":"Card Id"},"name":{"type":"string","title":"Name"}},"type":"object","required":["image_url","download_url","project_id","card_id","name"],"title":"ReplaceGenerateResponse"},"ReplaceReportRequest":{"properties":{"report_id":{"type":"integer","title":"Report Id"}},"type":"object","required":["report_id"],"title":"ReplaceReportRequest"},"ReplaceReportResponse":{"properties":{"card_id":{"type":"integer","title":"Card Id"},"action_id":{"type":"integer","title":"Action Id"},"status":{"type":"string","title":"Status"},"content_type":{"type":"string","title":"Content Type"},"first_check_after_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"First Check After Sec"},"preview_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Url"},"video_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Video Url"}},"type":"object","required":["card_id","action_id","status","content_type"],"title":"ReplaceReportResponse"},"ReplaceTemplateGenerationItem":{"properties":{"card_id":{"type":"integer","title":"Card Id"},"project_id":{"type":"integer","title":"Project Id"},"name":{"type":"string","title":"Name"},"image_url":{"type":"string","title":"Image Url"},"thumb_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thumb Url"},"download_url":{"type":"string","title":"Download Url"},"aspect_ratio":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Aspect Ratio"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["card_id","project_id","name","image_url","download_url"],"title":"ReplaceTemplateGenerationItem"},"ReplaceTemplateGenerationsResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ReplaceTemplateGenerationItem"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"}},"type":"object","required":["items","total"],"title":"ReplaceTemplateGenerationsResponse"},"ReplaceTemplateRenameRequest":{"properties":{"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label"}},"type":"object","title":"ReplaceTemplateRenameRequest"},"ReportActionRequest":{"properties":{"content_type":{"type":"string","title":"Content Type"},"target_type":{"type":"string","title":"Target Type"},"reason_code":{"type":"string","title":"Reason Code"},"reason_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason Text"}},"type":"object","required":["content_type","target_type","reason_code"],"title":"ReportActionRequest"},"ReportActionResponse":{"properties":{"report_id":{"type":"integer","title":"Report Id"},"can_replace":{"type":"boolean","title":"Can Replace"},"is_paying":{"type":"boolean","title":"Is Paying"},"has_replace_sources":{"type":"boolean","title":"Has Replace Sources","default":true},"replace_unavailable_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Replace Unavailable Reason"}},"type":"object","required":["report_id","can_replace","is_paying"],"title":"ReportActionResponse"},"ResultItem":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"client_group_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Group Id"},"type":{"type":"string","title":"Type"},"status":{"type":"string","title":"Status"},"result_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url"},"result_url_expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url Expires At"},"storage_status":{"type":"string","title":"Storage Status","default":"available"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"}},"type":"object","required":["action_id","type","status"],"title":"ResultItem"},"ResultsListResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ResultItem"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"page":{"type":"integer","title":"Page"},"page_size":{"type":"integer","title":"Page Size"},"total_pages":{"type":"integer","title":"Total Pages"}},"type":"object","required":["items","total","page","page_size","total_pages"],"title":"ResultsListResponse"},"RobokassaInitRequest":{"properties":{"product_id":{"type":"string","maxLength":64,"minLength":1,"title":"Product Id","description":"Product pack id"},"email":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Email","description":"Customer email for receipt"},"promo_code":{"anyOf":[{"type":"string","maxLength":512},{"type":"null"}],"title":"Promo Code","description":"Optional promo or referral code"},"idempotency_key":{"type":"string","maxLength":64,"minLength":16,"title":"Idempotency Key"}},"type":"object","required":["product_id","idempotency_key"],"title":"RobokassaInitRequest"},"RobokassaInitResponse":{"properties":{"order_id":{"type":"integer","title":"Order Id"},"amount_kopeks":{"type":"integer","title":"Amount Kopeks"},"payment_action":{"type":"string","title":"Payment Action"},"payment_method":{"type":"string","const":"POST","title":"Payment Method"},"payment_fields":{"additionalProperties":{"type":"string"},"type":"object","title":"Payment Fields"},"bonus_tokens":{"type":"integer","title":"Bonus Tokens","default":0},"payment_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payment Url"}},"type":"object","required":["order_id","amount_kopeks","payment_action","payment_method","payment_fields"],"title":"RobokassaInitResponse"},"SSEPublishRequest":{"properties":{"type":{"type":"string","title":"Type"},"action_id":{"type":"integer","title":"Action Id"},"status":{"type":"string","title":"Status"},"user_id":{"type":"string","title":"User Id"},"result_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"progress":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"}},"type":"object","required":["type","action_id","status","user_id"],"title":"SSEPublishRequest"},"SaveFromActionRequest":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"type":{"type":"string","title":"Type"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label"}},"type":"object","required":["action_id","type"],"title":"SaveFromActionRequest"},"ScenarioOut":{"properties":{"slot_id":{"type":"integer","title":"Slot Id"},"kind":{"type":"string","title":"Kind"},"role":{"type":"string","title":"Role"},"is_hero":{"type":"boolean","title":"Is Hero"},"idea":{"type":"string","title":"Idea"},"text":{"type":"string","title":"Text"},"scene":{"type":"string","title":"Scene"},"editable_brief":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Editable Brief"},"status":{"type":"string","title":"Status"},"linked_card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Linked Card Id"},"linked_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Linked Action Id"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"sort_order":{"type":"integer","title":"Sort Order"}},"type":"object","required":["slot_id","kind","role","is_hero","idea","text","scene","status","sort_order"],"title":"ScenarioOut"},"SessionStatusResponse":{"properties":{"funnel_id":{"type":"integer","title":"Funnel Id"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"completed":{"items":{"type":"string"},"type":"array","title":"Completed"},"next_steps":{"items":{"type":"string"},"type":"array","title":"Next Steps"},"product":{"anyOf":[{"$ref":"#/components/schemas/ProductOut"},{"type":"null"}]},"questions":{"items":{"$ref":"#/components/schemas/QuestionOut"},"type":"array","title":"Questions"},"ideas":{"items":{"$ref":"#/components/schemas/CardIdeaOut"},"type":"array","title":"Ideas"},"aspect_ratio":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Aspect Ratio"},"resolution":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resolution"},"card_style":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Card Style"},"design_by_reference":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Design By Reference"},"action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Action Id"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"result_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url"},"result_url_expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result Url Expires At"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"}},"type":"object","required":["funnel_id"],"title":"SessionStatusResponse"},"SetPaymentEmailRequest":{"properties":{"email":{"type":"string","title":"Email"}},"type":"object","required":["email"],"title":"SetPaymentEmailRequest"},"SetupRefs":{"properties":{"design":{"anyOf":[{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":3},{"type":"null"}],"title":"Design"},"model":{"anyOf":[{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":3},{"type":"null"}],"title":"Model"},"environment":{"anyOf":[{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":3},{"type":"null"}],"title":"Environment"}},"type":"object","title":"SetupRefs"},"SetupRequest":{"properties":{"aspect_ratio":{"anyOf":[{"type":"string","enum":["9:16","4:3","1:1","16:9","3:4"]},{"type":"null"}],"title":"Aspect Ratio"},"resolution":{"anyOf":[{"type":"string","enum":["1K","2K","4K"]},{"type":"null"}],"title":"Resolution"},"card_style":{"anyOf":[{"type":"string","enum":["infographic","cinematic","classic","premium"]},{"type":"null"}],"title":"Card Style"},"design_by_reference":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Design By Reference"},"refs":{"anyOf":[{"$ref":"#/components/schemas/SetupRefs"},{"type":"null"}]},"design_refs":{"anyOf":[{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":3},{"type":"null"}],"title":"Design Refs"}},"type":"object","title":"SetupRequest"},"SetupResponse":{"properties":{"ok":{"type":"boolean","title":"Ok","default":true},"aspect_ratio":{"type":"string","title":"Aspect Ratio"},"resolution":{"type":"string","title":"Resolution"},"card_style":{"type":"string","title":"Card Style"},"design_by_reference":{"type":"boolean","title":"Design By Reference","default":true},"design_ref_count":{"type":"integer","title":"Design Ref Count","default":0},"model_ref_count":{"type":"integer","title":"Model Ref Count","default":0},"environment_ref_count":{"type":"integer","title":"Environment Ref Count","default":0},"next_steps":{"items":{"type":"string"},"type":"array","title":"Next Steps"}},"type":"object","required":["aspect_ratio","resolution","card_style"],"title":"SetupResponse"},"StartRequest":{"properties":{"images":{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":6,"minItems":1,"title":"Images"},"locale":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Locale"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string","enum":["apparel","wearables","food","cosmetics","gadgets","home","other"]},{"type":"null"}],"title":"Category Id"},"description":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Description"}},"type":"object","required":["images"],"title":"StartRequest"},"StartResponse":{"properties":{"funnel_id":{"type":"integer","title":"Funnel Id"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"product":{"$ref":"#/components/schemas/ProductOut"},"questions":{"items":{"$ref":"#/components/schemas/QuestionOut"},"type":"array","title":"Questions"},"next_steps":{"items":{"type":"string"},"type":"array","title":"Next Steps"}},"type":"object","required":["funnel_id","product"],"title":"StartResponse"},"StartScenariosRequest":{"properties":{"product_name":{"type":"string","maxLength":200,"title":"Product Name","default":""},"search_name":{"type":"string","maxLength":300,"title":"Search Name","default":""},"category_id":{"type":"string","maxLength":100,"title":"Category Id","default":"other"},"theses":{"items":{"type":"string"},"type":"array","maxItems":30,"title":"Theses"},"card_count":{"type":"integer","maximum":12.0,"minimum":1.0,"title":"Card Count","default":7},"photo_count":{"type":"integer","maximum":12.0,"minimum":0.0,"title":"Photo Count","default":0},"aspect_ratio":{"type":"string","maxLength":20,"title":"Aspect Ratio","default":"3:4"},"wishes":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Wishes"},"kept_facts":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Kept Facts"},"survey_answers":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":20},{"type":"null"}],"title":"Survey Answers"},"description":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Description"},"locale":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Locale"},"snapshot":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Snapshot"}},"additionalProperties":false,"type":"object","title":"StartScenariosRequest","description":"Сырые куски для генерации набора, но БЕЗ фото — они уже в funnel_assets.\nSteering собирает бэк (фронт не шейпит промпт)."},"StartScenariosResponse":{"properties":{"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Id"},"stage1_status":{"type":"string","title":"Stage1 Status"},"stage1_phase":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stage1 Phase"},"request_hash":{"type":"string","title":"Request Hash"},"joined":{"type":"boolean","title":"Joined","default":false},"estimated_duration_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Estimated Duration Sec"},"starter_bonus_granted":{"type":"boolean","title":"Starter Bonus Granted","default":false},"starter_bonus_amount":{"type":"integer","title":"Starter Bonus Amount","default":0},"balance_after_bonus":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Balance After Bonus"}},"type":"object","required":["stage1_status","request_hash"],"title":"StartScenariosResponse"},"StripeInitRequest":{"properties":{"product_id":{"type":"string","maxLength":64,"minLength":1,"title":"Product Id","description":"Product pack id, e.g. tokens_start"},"email":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Email","description":"Customer email for receipt"},"promo_code":{"anyOf":[{"type":"string","maxLength":512},{"type":"null"}],"title":"Promo Code","description":"Optional promo or referral code"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"Display locale for Checkout page."},"idempotency_key":{"anyOf":[{"type":"string","maxLength":64,"minLength":16},{"type":"null"}],"title":"Idempotency Key"}},"type":"object","required":["product_id"],"title":"StripeInitRequest"},"StripeInitResponse":{"properties":{"order_id":{"type":"integer","title":"Order Id"},"amount_cents":{"type":"integer","title":"Amount Cents"},"checkout_url":{"type":"string","title":"Checkout Url"},"bonus_tokens":{"type":"integer","title":"Bonus Tokens","default":0}},"type":"object","required":["order_id","amount_cents","checkout_url"],"title":"StripeInitResponse"},"StudioModeResponse":{"properties":{"project_id":{"type":"integer","title":"Project Id"},"source":{"type":"string","title":"Source"},"funnel_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Funnel Id"}},"type":"object","required":["project_id","source"],"title":"StudioModeResponse"},"SubmitSurveyRequest":{"properties":{"survey_id":{"type":"integer","title":"Survey Id"},"answers":{"items":{"$ref":"#/components/schemas/SurveyAnswerItem"},"type":"array","title":"Answers"}},"type":"object","required":["survey_id","answers"],"title":"SubmitSurveyRequest"},"SubmitSurveyResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"promo_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promo Code"},"promo_discount_percent":{"type":"integer","title":"Promo Discount Percent","default":20}},"type":"object","required":["success"],"title":"SubmitSurveyResponse"},"SurveyAnswerItem":{"properties":{"key":{"type":"string","title":"Key"},"question":{"type":"string","title":"Question"},"chosen_option":{"type":"string","title":"Chosen Option"},"is_custom":{"type":"boolean","title":"Is Custom","default":false}},"type":"object","required":["key","question","chosen_option"],"title":"SurveyAnswerItem"},"TbankInitRequest":{"properties":{"product_id":{"type":"string","maxLength":64,"minLength":1,"title":"Product Id","description":"Product pack id, e.g. articles_1"},"success_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Success Url","description":"Optional redirect on success (frontend)"},"fail_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Fail Url","description":"Optional redirect on failure (frontend)"},"email":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Email","description":"Customer email for receipt and notifications"},"promo_code":{"anyOf":[{"type":"string","maxLength":512},{"type":"null"}],"title":"Promo Code","description":"Optional promo or referral code"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":64,"minLength":16},{"type":"null"}],"title":"Idempotency Key"}},"type":"object","required":["product_id"],"title":"TbankInitRequest"},"TbankInitResponse":{"properties":{"order_id":{"type":"integer","title":"Order Id"},"amount_kopeks":{"type":"integer","title":"Amount Kopeks"},"terminal_key":{"type":"string","title":"Terminal Key"},"payment_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payment Id"},"payment_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payment Url"},"bonus_tokens":{"type":"integer","title":"Bonus Tokens","default":0}},"type":"object","required":["order_id","amount_kopeks","terminal_key"],"title":"TbankInitResponse"},"TeamInfoResponse":{"properties":{"account_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Id"},"is_owner":{"type":"boolean","title":"Is Owner"},"balance":{"type":"integer","title":"Balance","default":0},"members":{"items":{"$ref":"#/components/schemas/TeamMemberResponse"},"type":"array","title":"Members","default":[]},"pending_invites":{"items":{"$ref":"#/components/schemas/PendingInviteResponse"},"type":"array","title":"Pending Invites","default":[]},"incoming_invites":{"items":{"$ref":"#/components/schemas/IncomingInviteResponse"},"type":"array","title":"Incoming Invites","default":[]},"max_members":{"type":"integer","title":"Max Members","default":5}},"type":"object","required":["is_owner"],"title":"TeamInfoResponse"},"TeamMemberResponse":{"properties":{"user_id":{"type":"string","title":"User Id"},"role":{"type":"string","title":"Role"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar Url"},"user_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Code"},"joined_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Joined At"}},"type":"object","required":["user_id","role"],"title":"TeamMemberResponse"},"TelegramBannerStateResponse":{"properties":{"enabled":{"type":"boolean","title":"Enabled","description":"Whether the banner should render right now"},"variant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Variant","description":"'no_sparks' or 'sparks'"},"attempt":{"type":"integer","title":"Attempt","description":"Sparks attempt number (1-3); 0 for no_sparks","default":0}},"type":"object","required":["enabled"],"title":"TelegramBannerStateResponse"},"TelegramBotLoginPollRequest":{"properties":{"nonce":{"type":"string","maxLength":64,"title":"Nonce"},"poll_token":{"type":"string","maxLength":128,"title":"Poll Token"}},"type":"object","required":["nonce","poll_token"],"title":"TelegramBotLoginPollRequest"},"TelegramBotLoginStartRequest":{"properties":{"referral_code":{"anyOf":[{"type":"string","maxLength":128},{"type":"null"}],"title":"Referral Code"},"promo_code":{"anyOf":[{"type":"string","maxLength":128},{"type":"null"}],"title":"Promo Code"}},"type":"object","title":"TelegramBotLoginStartRequest","description":"Коды подхватываем при создании запроса: к моменту подтверждения человек\nможет быть уже в другом окне, а реферал должен доехать."},"TelegramLoginData":{"properties":{"id":{"type":"integer","title":"Id"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Username"},"photo_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Photo Url"},"auth_date":{"type":"integer","title":"Auth Date"},"hash":{"type":"string","title":"Hash"},"referral_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referral Code"},"promo_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promo Code"}},"type":"object","required":["id","auth_date","hash"],"title":"TelegramLoginData","description":"Data from Telegram Login Widget."},"TrackEventRequest":{"properties":{"event_type":{"type":"string","maxLength":50,"title":"Event Type"},"session_id":{"type":"string","maxLength":64,"title":"Session Id"},"user_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"User Id"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["event_type","session_id"],"title":"TrackEventRequest"},"TrackEventResponse":{"properties":{"ok":{"type":"boolean","title":"Ok"}},"type":"object","required":["ok"],"title":"TrackEventResponse"},"TransactionResponse":{"properties":{"id":{"type":"integer","title":"Id"},"amount":{"type":"integer","title":"Amount"},"reason":{"type":"string","title":"Reason"},"description":{"type":"string","title":"Description"},"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"product_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Id"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Type"},"balance_before":{"type":"integer","title":"Balance Before","default":0},"balance_after":{"type":"integer","title":"Balance After","default":0},"actor_display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor Display Name"},"is_self_actor":{"type":"boolean","title":"Is Self Actor","default":false},"created_at":{"type":"string","title":"Created At"}},"type":"object","required":["id","amount","reason","description","created_at"],"title":"TransactionResponse"},"TransactionsListResponse":{"properties":{"transactions":{"items":{"$ref":"#/components/schemas/TransactionResponse"},"type":"array","title":"Transactions"},"has_more":{"type":"boolean","title":"Has More"},"balance":{"type":"integer","title":"Balance","default":0},"generation_stats":{"$ref":"#/components/schemas/GenerationStatsResponse","default":{"cards":0,"images":0,"photos":0,"videos":0}}},"type":"object","required":["transactions","has_more"],"title":"TransactionsListResponse"},"UpdateActiveActionRequest":{"properties":{"action_id":{"type":"integer","title":"Action Id"}},"type":"object","required":["action_id"],"title":"UpdateActiveActionRequest"},"UpdateCardTextBody":{"properties":{"idea":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Idea"},"text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Text"},"scene":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Scene"},"editable_brief":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Editable Brief"}},"additionalProperties":false,"type":"object","title":"UpdateCardTextBody"},"UpdateFolderRequest":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Name"},"color":{"anyOf":[{"type":"string","maxLength":30},{"type":"null"}],"title":"Color"}},"type":"object","title":"UpdateFolderRequest"},"UpdateItemRequest":{"properties":{"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"}},"type":"object","title":"UpdateItemRequest"},"UpdateProfileRequest":{"properties":{"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale"},"settings":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Settings"}},"type":"object","title":"UpdateProfileRequest"},"UpdateScenarioRequest":{"properties":{"idea":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Idea"},"text":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Text"},"scene":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Scene"},"editable_brief":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Editable Brief"}},"additionalProperties":false,"type":"object","title":"UpdateScenarioRequest"},"UploadImageRequest":{"properties":{"image":{"$ref":"#/components/schemas/ImageInput","description":"Image to upload"}},"type":"object","required":["image"],"title":"UploadImageRequest"},"UploadImageResponse":{"properties":{"upload_id":{"type":"string","title":"Upload Id"},"expires_in":{"type":"integer","title":"Expires In","default":3600}},"type":"object","required":["upload_id"],"title":"UploadImageResponse"},"UploadReferenceResponse":{"properties":{"reference_id":{"type":"integer","title":"Reference Id"},"project_id":{"type":"integer","title":"Project Id"},"thumb_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thumb Url"},"preview_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Url"},"file_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Url"}},"type":"object","required":["reference_id","project_id"],"title":"UploadReferenceResponse","description":"Response from uploading a single reference."},"UserInfoResponse":{"properties":{"id":{"type":"string","title":"Id"},"user_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Code"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar Url"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"locale":{"type":"string","title":"Locale","default":"ru"},"settings":{"additionalProperties":true,"type":"object","title":"Settings","default":{}}},"type":"object","required":["id"],"title":"UserInfoResponse"},"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"},"VideoGenerateResponse":{"properties":{"card_id":{"type":"integer","title":"Card Id"},"action_id":{"type":"integer","title":"Action Id"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Id"},"status":{"type":"string","title":"Status","default":"pending"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":60}},"type":"object","required":["card_id","action_id"],"title":"VideoGenerateResponse"},"VideoMetricResponse":{"properties":{"avg_video_generation_time_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Avg Video Generation Time Sec"}},"type":"object","title":"VideoMetricResponse"},"VideoQuizQuestion":{"properties":{"question":{"type":"string","title":"Question"},"options":{"items":{"type":"string"},"type":"array","maxItems":3,"minItems":3,"title":"Options"}},"type":"object","required":["question","options"],"title":"VideoQuizQuestion"},"VideoQuizResponse":{"properties":{"questions":{"items":{"$ref":"#/components/schemas/VideoQuizQuestion"},"type":"array","maxItems":5,"minItems":5,"title":"Questions"}},"type":"object","required":["questions"],"title":"VideoQuizResponse"},"VideoScenarioRequest":{"properties":{"image":{"$ref":"#/components/schemas/ImageInput","description":"Product image"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Category Id"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"Output language (ru/en/es)"}},"type":"object","required":["image"],"title":"VideoScenarioRequest"},"VideoScenarioResponse":{"properties":{"scenario":{"type":"string","title":"Scenario"}},"type":"object","required":["scenario"],"title":"VideoScenarioResponse"},"VideoStatusResponse":{"properties":{"status":{"type":"string","title":"Status"},"video_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Video Url"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"}},"type":"object","required":["status"],"title":"VideoStatusResponse"},"VkLinkData":{"properties":{"access_token":{"type":"string","title":"Access Token"},"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"}},"type":"object","required":["access_token"],"title":"VkLinkData"},"VkLoginData":{"properties":{"access_token":{"type":"string","title":"Access Token"},"user_id":{"type":"integer","title":"User Id"},"referral_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referral Code"},"promo_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promo Code"}},"type":"object","required":["access_token","user_id"],"title":"VkLoginData","description":"Data from VK ID OneTap widget (access token obtained via exchangeCode)."},"WarmNicheRequest":{"properties":{"search_name":{"type":"string","title":"Search Name","description":"Обобщённое имя ниши (из intake)","default":""},"category_id":{"type":"string","title":"Category Id","description":"UI category","default":"other"},"product_name":{"type":"string","title":"Product Name","description":"Уточняет резолв ниши","default":""},"snapshot":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Snapshot","description":"ProductSnapshot из intake (единый источник; приоритетнее полей)."}},"type":"object","title":"WarmNicheRequest"},"WebhookCreateRequest":{"properties":{"url":{"type":"string","maxLength":2000,"title":"Url","description":"HTTPS URL to receive webhook POSTs"},"events":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":10},{"type":"null"}],"title":"Events","description":"Events to subscribe to (default: all)"}},"type":"object","required":["url"],"title":"WebhookCreateRequest"},"WebhookCreateResponse":{"properties":{"id":{"type":"integer","title":"Id"},"url":{"type":"string","title":"Url"},"secret":{"type":"string","title":"Secret"},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"is_active":{"type":"boolean","title":"Is Active"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","url","secret","events","is_active","created_at"],"title":"WebhookCreateResponse"},"WebhookDeleteResponse":{"properties":{"deleted":{"type":"boolean","title":"Deleted"}},"type":"object","required":["deleted"],"title":"WebhookDeleteResponse"},"WebhookListItem":{"properties":{"id":{"type":"integer","title":"Id"},"url":{"type":"string","title":"Url"},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"is_active":{"type":"boolean","title":"Is Active"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","url","events","is_active","created_at","updated_at"],"title":"WebhookListItem"},"WebhookListResponse":{"properties":{"webhooks":{"items":{"$ref":"#/components/schemas/WebhookListItem"},"type":"array","title":"Webhooks"}},"type":"object","required":["webhooks"],"title":"WebhookListResponse"},"WishesQuizResponse":{"properties":{"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"questions":{"items":{"$ref":"#/components/schemas/QuizQuestionResponse"},"type":"array","maxItems":5,"minItems":5,"title":"Questions"}},"type":"object","required":["questions"],"title":"WishesQuizResponse"},"WishesSuggestRequest":{"properties":{"images":{"items":{"$ref":"#/components/schemas/ImageInput"},"type":"array","maxItems":5,"minItems":1,"title":"Images","description":"Product reference images"},"category_id":{"type":"string","maxLength":50,"title":"Category Id"},"concept_id":{"type":"string","maxLength":50,"title":"Concept Id"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"locale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locale","description":"Output language (ru/en/es)"}},"type":"object","required":["images","category_id","concept_id"],"title":"WishesSuggestRequest"},"WishesUsageResponse":{"properties":{"used":{"type":"integer","title":"Used"},"limit":{"type":"integer","title":"Limit"},"remaining":{"type":"integer","title":"Remaining"}},"type":"object","required":["used","limit","remaining"],"title":"WishesUsageResponse"},"routes__projects___shared__CardResponse":{"properties":{"id":{"type":"integer","title":"Id"},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"},"status":{"type":"string","title":"Status","default":"pending"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"},"preview_base64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Base64"},"preview_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Url"},"preview_webp_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview Webp Url"},"active_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Active Action Id"},"source_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Source Action Id"},"actions":{"items":{"$ref":"#/components/schemas/ActionResponse"},"type":"array","title":"Actions","default":[]},"card_user_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Card User Text"},"design_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Design Key"},"content_type":{"type":"string","title":"Content Type","default":"photo"},"video_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Video Url"},"video_duration_sec":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Video Duration Sec"},"video_scenario":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Video Scenario"},"aspect_ratio":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Aspect Ratio"},"photo_style":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Photo Style"}},"type":"object","required":["id","created_at","updated_at"],"title":"CardResponse"},"routes__projects___shared__CreateProjectRequest":{"properties":{"product_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"}},"type":"object","title":"CreateProjectRequest"},"routes__projects___shared__EditResponse":{"properties":{"card_id":{"type":"integer","title":"Card Id"},"action_id":{"type":"integer","title":"Action Id"},"depth":{"type":"integer","title":"Depth"},"status":{"type":"string","title":"Status","default":"pending"},"provider":{"type":"string","title":"Provider","default":"nanobanana"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":20}},"type":"object","required":["card_id","action_id","depth"],"title":"EditResponse","description":"Start edit action (async).\nClient should poll action status endpoint to get the image when completed."},"routes__projects___shared__GenerateResponse":{"properties":{"project_id":{"type":"integer","title":"Project Id"},"card_id":{"type":"integer","title":"Card Id"},"action_id":{"type":"integer","title":"Action Id"},"status":{"type":"string","title":"Status","default":"pending"},"provider":{"type":"string","title":"Provider","default":"nanobanana"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":20},"debug_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Debug Id"},"design_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Design Key"},"ab_test_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ab Test Id"},"estimated_duration_sec":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Estimated Duration Sec"}},"type":"object","required":["project_id","card_id","action_id"],"title":"GenerateResponse"},"routes__projects___shared__PricingResponse":{"properties":{"generation":{"type":"integer","title":"Generation"},"video_generation":{"type":"integer","title":"Video Generation"},"video_generation_5sec":{"type":"integer","title":"Video Generation 5Sec"},"video_generation_10sec":{"type":"integer","title":"Video Generation 10Sec"},"improvement":{"type":"integer","title":"Improvement"},"currency":{"type":"string","title":"Currency","default":"sparks"},"generation_by_resolution":{"additionalProperties":{"type":"integer"},"type":"object","title":"Generation By Resolution","default":{}},"default_resolution":{"type":"string","title":"Default Resolution","default":"2K"}},"type":"object","required":["generation","video_generation","video_generation_5sec","video_generation_10sec","improvement"],"title":"PricingResponse"},"routes__projects__crud__UpdateProjectRequest":{"properties":{"product_name":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Product Name"},"article":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Article"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":50},{"type":"null"}],"title":"Tags"},"comment":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Comment"},"card_text_draft":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Card Text Draft"},"mini_funnel":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Mini Funnel"},"folder_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Folder Id"},"clear_folder":{"type":"boolean","title":"Clear Folder","default":false}},"type":"object","title":"UpdateProjectRequest"},"routes__public__cards__CardResponse":{"properties":{"id":{"type":"integer","title":"Id"},"project_id":{"type":"integer","title":"Project Id"},"status":{"type":"string","title":"Status"},"content_type":{"type":"string","title":"Content Type"},"aspect_ratio":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Aspect Ratio"},"category_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"},"card_user_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Card User Text"},"design_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Design Key"},"active_action_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Active Action Id"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"},"actions":{"items":{"$ref":"#/components/schemas/CardActionSummary"},"type":"array","title":"Actions"}},"type":"object","required":["id","project_id","status","content_type","actions"],"title":"CardResponse"},"routes__public__generate__EditResponse":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"parent_action_id":{"type":"integer","title":"Parent Action Id"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"client_group_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Group Id"},"status":{"type":"string","title":"Status","default":"pending"},"poll_url":{"type":"string","title":"Poll Url"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":20}},"type":"object","required":["action_id","parent_action_id","poll_url"],"title":"EditResponse"},"routes__public__generate__GenerateResponse":{"properties":{"action_id":{"type":"integer","title":"Action Id"},"status":{"type":"string","title":"Status","default":"pending"},"poll_url":{"type":"string","title":"Poll Url"},"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"client_group_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Group Id"},"detected":{"anyOf":[{"$ref":"#/components/schemas/DetectedFields"},{"type":"null"}]},"style":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Style"},"first_check_after_sec":{"type":"integer","title":"First Check After Sec","default":20}},"type":"object","required":["action_id","poll_url"],"title":"GenerateResponse"},"routes__public__info__BalanceResponse":{"properties":{"balance":{"type":"integer","title":"Balance"},"available":{"type":"integer","title":"Available"},"holds":{"type":"integer","title":"Holds"}},"type":"object","required":["balance","available","holds"],"title":"BalanceResponse"},"routes__public__info__PricingResponse":{"properties":{"generation":{"type":"integer","title":"Generation"},"improvement":{"type":"integer","title":"Improvement"},"video_5sec":{"type":"integer","title":"Video 5Sec"},"video_10sec":{"type":"integer","title":"Video 10Sec"}},"type":"object","required":["generation","improvement","video_5sec","video_10sec"],"title":"PricingResponse"},"routes__public__projects__CreateProjectRequest":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Name","description":"Display name"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Comment"}},"type":"object","title":"CreateProjectRequest"},"routes__public__projects__UpdateProjectRequest":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Name"},"product_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Product Name"},"category_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Category Id"},"concept_id":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}],"title":"Concept Id"},"comment":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Comment"}},"type":"object","title":"UpdateProjectRequest"},"routes__public__wishes__WishesSuggestResponse":{"properties":{"text":{"type":"string","title":"Text"}},"type":"object","required":["text"],"title":"WishesSuggestResponse"},"routes__tokens__BalanceResponse":{"properties":{"balance":{"type":"integer","title":"Balance"},"available":{"type":"integer","title":"Available"},"holds":{"type":"integer","title":"Holds"}},"type":"object","required":["balance","available","holds"],"title":"BalanceResponse","description":"Response for balance query."},"routes__wishes__WishesSuggestResponse":{"properties":{"project_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Project Id"},"text":{"type":"string","title":"Text"}},"type":"object","required":["text"],"title":"WishesSuggestResponse"}},"securitySchemes":{"ApiKeyAuth":{"type":"http","scheme":"bearer","description":"API-ключ формата ak_... Создайте в личном кабинете: https://app.aidentika.com/profile"}}},"security":[{"ApiKeyAuth":[]}],"externalDocs":{"description":"Полная документация API","url":"https://docs.aidentika.com/api"}}